[devel] Gear и внешние VCS.

Eugene Prokopiev enp на itx.ru
Пт Июн 20 09:01:10 MSK 2014


19 июня 2014 г., 22:20 Igor Vlasenko написал:

> Меня тоже надо услышать. Мне лично и прямо сейчас такая информация
> уже нужна для пакетов perl-*. Я ведь не исключен из сообщества?
> А по закону больших чисел такая информация понадобится не раз и не
> два еще не одному десятку майнтайнеров. Да, у нас массовые обновления
> и исправления пакетов не очень распространены. Но не потому, что
> не нужны, а потому что требуется слишком много усилий из-за
> несовершенства инструментов.

Игорь, можно еще раз? Мне тоже кажется, что чем меньше дополнительной
информации в разных местах хранить, тем более чистой и удобной
становится сама концепция :) Т.е. раз мы уже используем watch-файлы,
то логично в них же хранить ссылку на внешнюю VCS + регэксп для
релизных тегов. Тогда для облегчения работы мы могли бы сказать:

$ gear-restore-remotes (один раз сразу после git clone для извлечения
remotes - но тут нужно дать капризным майнтейнерам возможность
задавать имя remotes)
$ git remotes fetch
$ gear-watch (посмотреть глазами, есть ли новые теги?)
$ girar-update-by-upstream-tag (мержит апстримный тег, правит спек,
коммитит, может даже ставит теги для сизифа и бранчей)
$ gear-hsh ... (собираем теги для сизифа и бранчей)

Имена новых утилит, естественно, условные ...

По дефолту, наверное, стоит ставить теги и собирать только для сизифа,
а в случае присутствия specsubst также и для бранчей (указанных в
каком-то специального вида комментарии в спеке, например).

Все эти команды я могу дать вручную, а могу и роботу поручить, если
пакетов куча.

Зачем здесь апстримные бранчи? Можно ведь таким образом собирать те же
starman и perl-Mojolicious непосредственно по тегам? И netxms можно
было бы.

Есть другой вопрос: бывает нужно собирать не апстримные, а собственные
теги. Или вот я сам собираю себе freeswitch, т.к. не нашел общего
языка с майнтейнером -
http://git.altlinux.org/people/enp/packages/freeswitch.git. Мержить
можно было бы и апстримные теги, но еще мне нужно вычислять разницу
между бранчами upstream/v1.2.stable и patch/ldap -
http://git.altlinux.org/people/enp/packages/freeswitch.git?p=freeswitch.git;a=blob;f=.gear/rules;h=a4a4163b4b0ed5bf439d2603c21431edd0466635;hb=f5d4ebe340bcb69df0076a9fa2f28aba5cf45231.
Где хранить информацию об этом - тоже в watch-файле?

-- 
WBR,
Eugene Prokopiev


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