[devel] tar.gz в .gear-rules из другого git-репозитария

Aleksey Avdeev =?iso-8859-1?q?solo_=CE=C1_solin=2Espb=2Eru?=
Вт Апр 3 03:53:05 MSD 2007


Eugene Prokopiev пишет:
>>  Выложите свой репозитарий на git.alt (ссылку -- сюда) -- ночером
>>попробую глянуть... ;-)
> 
> 
> http://git.altlinux.org/people/enp/packages/?p=dbmail.git;a=summary - 
> это просто результат импорта из src.rpm, теперь нужно сделать правильно ;)
> 

  Правильность не обещаю, но то что получилось -- выложу, с описанием
процесса:

1. Клонирование <http://nfg3.nfgs.net/git/dbmail.git/>

  Процесс долгий и мучительный. Результат здесь:
<http://git.altlinux.ru/people/solo/packages/?p=dbmail.orig.git;a=summary>

  Дальнейшее -- из расчёта что сделано cd в каталог репозитария.

2. Расстановка тегов.

  Совсем паршиво. Похоже <http://nfg3.nfgs.net/git/dbmail.git/> -- это
только часть репозитария используемого автором. Нашёл тольк 1 коммит
соответствующий какой либо стабильной версии (отметеил как
dbmail/2.2.4)... Всё остальное -- репозитарий разработки (судя по
ChangeLog).

3. Загрузка dbmail-*.src.rpm "рядом"

  Для загрузки использовал патченую версию gear-srpmimport (можно взять
здесь:
<http://git.altlinux.org/people/solo/packages/?p=gear.git;a=shortlog;h=solo/comp-branches>),
позволяющую разложить компоненты srpm по отдельным бранчам и задавать
префикс для бранчей/тегов. (Для дальнейшей обработки мне так удобнее.
При использовании стандартной утилиты дальнейшее поменяется не сильно.)

$ gear-srpmimport --import-only --comp-branches --prefix=ALT/dbmail
dbmail-2.0.10-alt2.src.rpm

...

$ gear-srpmimport --import-only --comp-branches --prefix=ALT/dbmail
dbmail-2.2.1-alt5.0.src.rpm

  Прошу обратить внимание на --import-only: если его не указывать --
gear-srpmimport смержит созданый ей бранч с текущим. А нам, в данном
случаи, это не нужно.

  В дальнейшем -- исхожу из того, что надо сменить версию на 2.2.4
(ненашоёл, куда поставить теги на другие версии).

4. Редактируем .gear-rules:

а) Переходим в нужный бранч (у меня -- ALT/dbmail/gear_rules, по
умолчению -- в srpms, если параметрами небыло заданно другое)

$ git-checkout ALT/dbmail/gear_rules

б) Редактируем .gear_rules. Нам там нужно:

tar.gz: dbmail/2.2.4:. name=dbmail-2.2.4

в) Коммитим:

$ git-commit -a -s -m'Updete .gear_rules:
> - using dbmail/2.2.4 tsg
> '

5. Редактируем спек. Сдесь всё аналогично:

а) Переходим в нужный бранч, если это нужно (у меня нужно перейти в
ALT/dbmail/spec)

$ git-checkout ALT/dbmail/spec

б) Редактируем и коммитем.

6. Собираем все правки в кучу (если компаненты по бранчам не разделялись
-- это шаг не нужен)

$ git-checkout ALT/dbmail/srpms
$ git-merge 'Merging all components' HEAD ALT/dbmail/spec
ALT/dbmail/gear_rules

7. Удаляем старый каталог dbmail (он больше не нужен) и соммитим:

$ git-rm -f dbmail
...

$ git-commit -a -s -m 'Remove old dbmail/'

8. Подшиваем бранч упстрима:

$ git-merge -s ours 'Using upstream branch' HEAD dbmail/2.2.4

9. Обнавляем/создаём .gear-tags:

$ gear-update-tag -a

10. Соммитем всё это безобразие :-)

git-commit -a -s -m '- move to 2.2.4'

11. Проверяем, а всё ли у нас получилось:

$ gear --rpmbuild -- rpmbuild --nodeps -bs
Записан: /home/solo/RPM/SRPMS/dbmail-2.2.4-alt0.src.rpm
[solo на worksol dbmail.rpm]$ rpm -qlp
/home/solo/RPM/SRPMS/dbmail-2.2.4-alt0.src.rpm
dbmail-2.2.0-altlinux-as-need.patch
dbmail-2.2.1-fix-libdir.patch
dbmail-2.2.4.tar.gz
dbmail-clean
dbmail-imapd.init
dbmail-lmtpd.init
dbmail-pop3d.init
dbmail-timsieved.init
dbmail.conf
dbmail.spec

PS: Результат описанных опираций -- здесь:
<http://git.altlinux.ru/people/solo/packages/?p=dbmail.rpm.git;a=shortlog;h=ALT/dbmail/srpms>

-- 

С уважением. Алексей.

----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 548 байтов
Описание: OpenPGP digital signature
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20070403/6d2692f4/attachment-0001.bin>


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