Anton Farygin пишет: > Aleksey Avdeev пишет: >> Anton Farygin пишет: >>> Eugene Prokopiev пишет: >>>> 18.05.09, Anton >>>> Farygin написал(а): >>>>> Eugene Prokopiev пишет: >>>>> >>>>> >>>>>>> Пакеты в бранчи я собираю такой командой: >>>>>>> $ rpmbph -n -M50 -u global.spec >>>>>>> Пока не представляю, как это сделать на основе git, поскольку >>>>>>> пока не готов изобретать правила для хранения в репозитории >>>>>>> разных веток (или они уже где-то опубликованы). >>>>>>> Если Вы считаете, что автоматическое создание ветки в git для >>>>>>> бранча имеет смысл, я готов рассмотреть пример репозитория с >>>>>>> правильной структурой и адаптировать rpmbph к сборке из git. >>>>>>> >>>>>> Как минимум для меня некоторая автоматика для управления ветками в >>>>>> git >>>>>> имеет смысл, только сделать никак не соберусь :( В качестве примера >>>>>> структуры репозитория предлагаю взглянуть на >>>>>> http://www.altlinux.org/Git/SomeDestReposViaBranches >>>>>> >>>>>> >>>>> Скажу вам по секрету, только никому не говорите - при сборке >>>>> пакетов ветки >>>>> не имеют никакого значения, важны только тэги. >>>> >>>> А можно развить эту мысль дальше? >>>> >>>> Мне было показалось, что вы хотели предложить собирать в разные >>>> репозитории из одной ветки, но я не смог понять как быть с Release и >>>> changelog ... >>> >>> А дальше - вы пишете скрипт, который будет из master делать тэги с >>> нужными изменениями (через временный бранч). Release и changelog надо >>> будет править. >>> >>> Кстати, почему-то у нас в Release: не получается использовать >>> макросы, определённые в /etc/rpm/macros.d/ ? Они вообще должны >>> работать ? >> >> Можно, и оно работает. См. >> : >> >> часть макросов, на основе которых вычисляется Release (%distr_switch, >> в частности) определена в другом пакете (в rpm-macros-apache2). Для >> данного пакета требуется использовать BuildRequires(pre). > > Интересно было бы полностью вычислить Release в /etc/rpm/macros.d/ > > Всё, что еу нужно передавать - это номер релиза - циферку. > > Т.е. - в итоге должно получиться что-то вроде > > %_altrelease 1 > Release: %alt_release Примерно так и сделано, только я использую 2 цифры в формате х{,.у}, где: %release_base_num -- обязательный x; %release_base_num2 -- не обязательный y (если он %nil, то в релизе одна цифра). Всё остальное -- вычисляется на базе констант, тоже определённых в спеке. > >> >>> а так можно было бы release вычислять на основании какого-нить >>> %branchver >> >> Я давно этим (вычислением нужного Release, в зависимости от >> дистрибутива/бранча, через макросы) пользуюсь (и как-то сюда писал об >> этом). > > что-то у тебя в спеке страшно всё очень. Вынести бы это в отдельную > функцию... Напрашивается, но пока не придумал как это лучше сделать... -- С уважением. Алексей.