[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