[devel] Gear и внешние VCS.
Anton Farygin
rider на altlinux.com
Чт Июн 19 14:08:36 MSK 2014
On 19.06.2014 01:28, Igor Vlasenko wrote:
> On Wed, Jun 18, 2014 at 10:07:48AM +0400, Anton Farygin wrote:
>> git://git.kernel.org/pub/scm/fs/squashfs/squashfs-tools.git
>> v([0-9]*\.[0-9]*) local:upstream
>
> да, что-то такое я и думаю сделать в обвязках над.
> но, разбить этот файл на 2 части:
> aналог watch, скажем release-tag-filter,
> в котором будет только
>
> v?([0-9]*\.[0-9]*)
>
> и, скажем, .gear/upstream-remotes,
<skip>
>
> И всего-то надо инструмент, чтобы gear репозиторий
> хранил в себе свои remotes.
>
> как минимум, что-то вроде
> gear-save-remotes и gear-restore-remotes
>
> Это удобно и NMUшникам, и основному майнтайнеру:
> если remotes не сохраняются, то на git.alt копии его
> репозиториев неполноценные, и если слетит диск,
> то не достаточно будет склонировать их с git.alt,
> придется заново тратить время на восстановление
> локальных настроек remotes (а если использовался
> git-svn, то там все вообще печально).
>
> Да и на даче / в походе удобнее -
> не нужно таскать с собой диски
> или тратить время на настройку git-клона.
>
Зачем ? У каждого свои предпочтения по именованию локальных бранчей и не
надо никому ничего навязывать.
ветка upstream легко восстанавливается из
$cat .gear/tags/list
206e6dc17b4a7f4aaac1f8c87ffdc7cd6e7a0ce6 v4.3
единственная проблема - это понять откуда брать апстрим, и эту
информацию как раз удобно хранить в watch файле.
Если хочется быстрого восстановления, то можно сделать тривиальный
скрипт, который посмотрит на локальные настройки (как мейнтейнеру
хочется хранить апстримную ветку локально и название remote ветки)
и сделает два шага:
1) из .gear/tags/list соорудит ветку upstream
2) из watch файла соорудит remote для upstream
Всё очень просто.
Сложно будет в случае нескольких тарболлов из разных веток и двух remote
upstream Я с таким где-то сталкивался, но и там можно что-то придумать.
Подробная информация о списке рассылки Devel