ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Ivan Zakharyaschev <imz@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] Обновление пакета из upstream на примере pybind11
Date: Thu, 27 Jul 2023 12:18:48 +0300 (MSK)
Message-ID: <alpine.LFD.2.20.2307271206420.2635@imap.altlinux.org> (raw)
In-Reply-To: <90fbf646-888e-6257-11f2-63474c106137@basealt.ru>

[-- Attachment #1: Type: text/plain, Size: 3775 bytes --]

Здравствуйте!

On Thu, 27 Jul 2023, Nikolai Kostrigin wrote:

> 27.07.2023 06:58, Ivan A. Melnikov пишет:

> > On Thu, Jul 27, 2023 at 04:00:07AM +0300, Vitaly Lipatov wrote:
> > > Может ли кто-нибудь, в идеале — мантейнер пакета pybind11, показать на
> > > примере этого
> > > пакета pybind11, как его обновить до версии v2.11.1 ?
> > 
> > Как я понимаю, проблема в том, что у апстрима
> > несколько "стабильных" веток, среди которых
> > v2.9 (из которой пакет собран сейчас)
> > и v2.11 (из которой мы хотим собрать пакет),
> > и эти ветки друг от друга не наследуют. Соответсвенно,
> > нужно переехать с одной апстримной ветки на другую.
> > 
> > Я правильно угадал?
> > 
> Вполне возможно.
> Правда раньше обновление минорных версий было бесшовным и, когда я столкнулся
> с этим впервые, подумал, что это просто ошибка апстрима (force push)
> и выкрутился так:
> 
> https://git.altlinux.org/people/nickel/packages/?p=pybind11.git;a=commit;h=e63fc1ec6ab447b36a9958e456e96d7f7002d5c6

Used "git read-tree -u -m v2.8.1" to get new upstream source tree.

Вариант первого варианта, с техникой, ведущей к более предсказуемому и 
понятному варианту, чем копание в конфликтах merge.

Как отмечено, удобно, что в ALT-е своих патчей нет, всё внутри .gear/

(git diff v2.9.2..sisyphus --stat)

Как вариант, я бы на основе тех команд, которые помню, сделал аналогичное:

git switch -C master v2.11.1
git merge -s ours gears/sisyphus -m 'merge -s ours gears/sisyphus'
git restore -W -S -s gears/sisyphus .gear
git commit --amend -m 'merge -s ours gears/sisyphus, restore .gear'

и дальше как обычно.

> > Варианта тут как минимум два.
> > 
> > 1. Сделать `git merge v2.11.1` и убедиться, что ничего
> > лишнего в исходниках не появилось (`git diff --stat v2.11.1`
> > не содержит ничего кроме .gear). Минус такого
> > подхода в том, что в истории ветки sisyphus останется
> > куча коммитов из ветки v2.9, которых там
> > "на самом деле нет".
> > 
> > 2. Сделать новую историю с новой ветки, отключив
> > git inheritance check.
> > 
> > Оба варианта имеют свои недостатки и приемущества, и мне
> > кажется мейнтейнер должен сам выбрать, что правильнее
> > в конкретном случае. Я бы по умолчанию предпочитал
> > второй, но думаю это вкусовщина.

Мне первый вариант больше нравится, т.к. хранит историю пакета в ALT.

> Сейчас стало понятно, что это был не единичный случай.
> Раз уж это вынесено на публичное обсуждение, приглашаю остальных мэнтейнеров
> высказать свое мнение при желании.


-- 
Best regards,
Ivan

  parent reply	other threads:[~2023-07-27  9:18 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-27  1:00 Vitaly Lipatov
2023-07-27  3:58 ` Ivan A. Melnikov
2023-07-27  7:58   ` Nikolai Kostrigin
2023-07-27  9:08     ` Denis Medvedev
2023-07-27  9:11     ` Dmitry V. Levin
2023-07-27  9:16       ` Andrey Savchenko
2023-07-27  9:50         ` Dmitry V. Levin
2023-07-27 10:14       ` Ivan A. Melnikov
2023-07-27 13:45         ` Dmitry V. Levin
2023-07-27  9:18     ` Ivan Zakharyaschev [this message]
2023-07-27 11:40       ` Vitaly Lipatov
2023-07-27 13:36         ` Nikolai Kostrigin
2023-07-27 13:59           ` Ivan Zakharyaschev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LFD.2.20.2307271206420.2635@imap.altlinux.org \
    --to=imz@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git