Поиск подходящей версии для Бранча

Материал из ALT Linux Wiki

Преамбула

Бывает такая ситуация что в Сизифе слишком свежий пакет, а в бранче слишком старый.

И бэкпортировать свежий пакет в бранч не позволяют старые версии пакетов, которые редко или вообще не обновляются в бранче.

Чтобы понять почему это происходит нужно прочесть политику создания бранчей в Altlinux и чем они отличаются от Сизифа.

Процесс

!!! Подобрать пакет для примера !!!


Тянем с git.alt gear-репозиторий

 $rpmgp -g name_pckg
 $cd name_pckg

Ищем тэг или коммит с релизом, который мы пробуем собрать в бранч

 $git tag
 или
 $git log

Запоминаем имя нужнго тэга или копируем хеш нужного коммита

Создаём ветку с именем нужной нам версии

 $git checkout -b Name_release имя_тэга
 или
 $git checkout -b Name_release хеш_коммита

Нас должно автоматически переключить в новую ветку

Пробуем бэкпортировать и получаем ошибку

$  rpmbph -b p7

error: pathspec 'p7' did not match any file(s) known to git.
Error in rpmbph: Can't checkout branch p7. Use FULLPATH_TO_WORK_DIR/packagename.spec.p7 manually or remove it.

Исправляем ошибку и готовим ветку p№

Меняем старый спек на только что сгенерированный

$ mv Packagename.spec.p7 Packagename.spec

Комментируем и создаём ветку p№ вручную

$ git commit  Packagename.spec -m "initial p7 branch build"
$ git checkout -b p7

Отправка в Сизиф

Проверяем что находимся в ветке p7 :

$ git status
On branch p7
nothing to commit, working directory clean

И отправляем в Сизиф на сборку:

$ rpmbs git.alt -u

После чего ждём пиьсмо на почту с результатом.

Если пришло письмо "EPERM" - Значит что задание собралось и отправлено на модерацию к "главному" по бранчу.