[devel] Q: .gear-rules и "апстримные" сорцы в отдельном бранче
Anton Farygin
=?iso-8859-1?q?rider_=CE=C1_altlinux=2Ecom?=
Ср Июн 21 10:27:33 MSD 2006
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'ать.
>
> Сейчас никто не умеет принимать в качестве аргумента 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. Это совсем
> бредовая идея или можно начинать готовить патч? ;-)
Это примерно тоже самое, что месяц назад я писал в этот же список.
Отличная идея ;)
Rgds,
Rider
Подробная информация о списке рассылки Devel