Eugene Prokopiev пишет: >> Это сделано для добавления в спек конструкции с отдельной историей >> (автоматизации вычисления правильного релиза, в зависимости от требуемого >> бранча). В дальнейшем -- позволит обновлять данную конструкцию (при >> появлении новых бранчей) простым образом, через git pull. (Пример такого >> обновления, добавление поддержки M50, как раз и привлёк твоё внимание выше.) > > А насколько эта конструкция совместима с новой сборочной системой, > которая все равно требует явных разных коммитов для разных бранчей? > Полностью совместима: бранч для бэкпорта конечно потребуется, но обновлять его можно через git pull с простым конфликтом (в %changelog). Небольшая демонстрация на примере бранчей demo/master (см. ) и demo/4.0 (см. ): 1. Завожу демонстрационный бранч demo/master и обновляю в нём спек до: $ git-diff master demo/master|cat diff --git a/nut.spec b/nut.spec index 8ea317b..fba4aa5 100644 --- a/nut.spec +++ b/nut.spec @@ -3,7 +3,7 @@ # for set release %define release_pre alt %define release_base_num 1 -%define release_base_num2 1 +%define release_base_num2 2 %define release_suff %nil # for distr selected @@ -629,6 +629,10 @@ fi %_man3dir/* %changelog +* Tue Feb 10 2009 Aleksey Avdeev 2.2.2-alt1.2 +- NMU +- For backports demonstration. + * Mon Feb 09 2009 Aleksey Avdeev 2.2.2-alt1.1 - NMU 2. Завожу демонстрационный бранч demo/4.0: $ git-checkout -b demo/4.0 4.0 3. $ git-pull . demo/master Auto-merged nut.spec CONFLICT (content): Merge conflict in nut.spec Automatic merge failed; fix conflicts and then commit the result. а) получаем обещанный конфликт: %changelog <<<<<<< HEAD:nut.spec * Mon Feb 09 2009 Aleksey Avdeev 2.2.2-alt1.0.M40.1 - NMU - Backports to 4.0 ======= * Tue Feb 10 2009 Aleksey Avdeev 2.2.2-alt1.2 - NMU - For backports demonstration. >>>>>>> 2c105c94d9dd31a8be3d2515764216d9ac115d69:nut.spec * Mon Feb 09 2009 Aleksey Avdeev 2.2.2-alt1.1 - NMU б) решаем его (и обновляя релиз/дату) и комитим. 3. На выходе -- корректный бэкпорт: $ git-diff 4.0 demo/4.0|cat diff --git a/nut.spec b/nut.spec index b2dfdce..e6df0d2 100644 --- a/nut.spec +++ b/nut.spec @@ -3,7 +3,7 @@ # for set release %define release_pre alt %define release_base_num 1 -%define release_base_num2 1 +%define release_base_num2 2 %define release_suff %nil # for distr selected @@ -629,10 +629,17 @@ fi %_man3dir/* %changelog -* Mon Feb 09 2009 Aleksey Avdeev 2.2.2-alt1.0.M40.1 +* Tue Feb 10 2009 Aleksey Avdeev 2.2.2-alt1.1.M40.1 - NMU - Backports to 4.0 +* Tue Feb 10 2009 Aleksey Avdeev 2.2.2-alt1.2 +- NMU +- For backports demonstration. + * Mon Feb 09 2009 Aleksey Avdeev 2.2.2-alt1.1 - NMU -- С уважением. Алексей.