[devel] gear -- создание тарбола из другого branch

Sergey Vlasov =?iso-8859-1?q?vsu_=CE=C1_altlinux=2Eru?=
Сб Сен 23 20:51:45 MSD 2006


On Sat, Sep 23, 2006 at 07:54:46PM +0400, Dmitry V. Levin wrote:
> On Sat, Sep 23, 2006 at 07:23:46PM +0400, Sergey Vlasov wrote:
[...]
> > Можно держать .gear-rules и spec в отдельном бранче, куда фиктивно
> > (через git-pull -s ours) мержить бранчи, содержащие реальные
> > исходники; тогда гарантировать наличие нужных объектов будет связь
> > между коммитами.

И, кстати, gitk при этом быстро отображает пустой diff (в отличие от
merge с переименованием в подкаталог, для которых он очень долго
формирует километровый diff).  Правда, если в этом же коммите
поменять, например spec, получается не совсем красиво - видимо, это
лучше делать отдельным коммитом без merge.

> > В этом случае неплохо было бы, чтобы gear проверял наличие этой связи;
> > тогда придётся в параметре опции -t требовать не просто treeish, а
> > commitish[:path].
> 
> Точно.  Эта проверка просто необходима для поддержки .gear-tags.
> 
> По моему, идея выглядит вполне живой.

Только получается, что в .gear-tags придётся писать ссылки именно на
commit - ссылку на объект типа tag написать уже нельзя.

> > А когда у нас по плану уничтожение src.rpm?
> 
> Как только перейдём на сборку из gear-репозиториев.  Насколько я понимаю,
> srpm-пакеты из /i/S будут srpmimport'иться и с этого момента srpm-пакеты
> выкладываться перестанут.

Ну и в каком виде пойдут исходники, например, в Uranus?

> > Пока это не произойдёт,
> > смотреть на tar придётся.  И мне не нравится, что сейчас этот tar
> > может содержать непонятно что вместо оригинальных исходников.
> 
> Вместо оригинальных исходников всегда можно положить что угодно.

Проблема в том, что при использовании gear зачастую это "что угодно"
лежит в src.rpm под именем %name-%version.tar без всяких прочих
признаков того, что оно отличается от оригинала:

git $ git-diff --stat maint master
 .gear-rules                     |    1 
 Documentation/config.txt        |    2 
 Documentation/core-tutorial.txt |    2 
 Documentation/cvs-migration.txt |    2 
 Documentation/tutorial-2.txt    |    2 
 builtin-tar-tree.c              |    2 
 describe.c                      |    4 
 diff.c                          |   18 +-
 git.c                           |    4 
 git.spec                        |  360 ++++++++++++++++++++++++++++++++
 linkify.c                       |  444 +++++++++++++++++++++++++++++++++++++++
 merge-tree.c                    |    4 
 pager.c                         |    2 
 templates/hooks--update         |  149 +++++++++----
 14 files changed, 935 insertions(+), 61 deletions(-)


Не стоит ли в этом случае, например, называть этот файл
%name-%version-%release.tar?

(Хм, а git-tar-tree у нас ещё и нестандартный - в нём прибито гвоздями
umask 022, причём без возможности изменить это через tar.umask в
конфиге...   Не лучше ли, раз уж так хочется видеть такой umask,
просто изменить начальное значение tar_umask?  Да и документировано
это изменение только в changelog пакета.)
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20060923/6be53910/attachment-0001.bin>


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