[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