[devel] Q: .gear-rules и "апстримные" сорцы в отдельном бранче

Anton Farygin =?iso-8859-1?q?rider_=CE=C1_altlinux=2Ecom?=
Чт Июн 22 10:36:30 MSD 2006


Dmitry V. Levin wrote:
> Hi,
> 
> On Tue, Jun 20, 2006 at 07:19:21PM +0400, Alexey I. Froloff wrote:
>> Идея в следующем:
>>
>> "Апстримные" сорцы лежат в бранче, например upstream, апдейтятся
>> там некоторым образом (git pull, git svn fetch, git cvsimport -
>> whatever).  В рабочем бранче лежат мои патченые исходники, спеки
>> и так далее.  gear пакует бранч upstream в тарбол и делает
>> git-diff-tree между upstream и некоторым tree-ish.  Почему
>> tree-ish, а не HEAD?  А потому что я обычно делаю
>> git-mv -k * .* %name, и вот этот %name мне и надо diff'ать.
> 
> Я хочу понять, почему вам недостаточно положить в srpm тарбол,
> зачем всё-таки вы (я слышал как минимум от двоих) хотите паковать в srpm
> оригинальный тарбол + кумулятивный патч?

Понятно почему - многие мантейнеры оригинальных тарболлов (из 
Mainstream) имеют свойство самостоятельно посещать src.rpm пакеты и 
забирать оттуда патчи.

Я уже несколько раз замечал это за авторами нескольких приложений.

> 
>> Сейчас никто не умеет принимать в качестве аргумента tree-ish,
>> только путь.  Предлагается следующий синтаксис:
>>
>> tar: dir name=name base=base branch=branch
>>
>> diff: dir name=name base=base branch=branch
>>
>> В первом случае добавляется параметр "branch", в моём примере это
>> будет выглядеть так:
>>
>> tar.bz2: . name=@name на -@version@ base=@name на -@version@ branch=upstream- на version@
>>
>> Где upstream- на version@ это имя тега, который я ставлю по
>> результатам чекаута (чисто для удобства).
>>
>> diff: projectname name=@name на -@version на -alt.patch base=. branch=upstream- на version@
>>
>> projectname - имя каталога с сорцами в рабочем бранче.  По нему
>> получаем tree_ish_2.  base - имя каталога с сорцами в бранче
>> upstream.  По нему и по имени бранча получаем tree_ish_1.  Дальше
>> делается:
>>
>> git-diff-tree --patch-with-stat $tree_ish_1 $tree_ish_2 > $name.patch
>>
>> Таким образом получается что у нас "скачет" $tree_id.  Это совсем
>> бредовая идея или можно начинать готовить патч? ;-)
> 
> Патч, кстати, выглядит нормально.  А вот по самой идее у меня есть вопрос.
> 
> Первоначально я исходил из идеи воспроизводимости, т.е. из того, что
> результат работы "gear --tree-ish=ID" будет одинаковым при одинаковых ID.
> Если в правилах для gear можно будет указывать произвольные tree-ish, то
> это моё предположение не будет выполнено.

Почему же ?

Всё равно tree-ish2 будет зависить от содердимого tree_ish1
> 
> Вопрос: насколько эта воспроизводимость важна?  Можно ли ей пожертвовать в
> пользу предлагаемой возможности?


На мой взгляд этого не требуется.

Rgds,
Rider



Подробная информация о списке рассылки Devel