SrpmToGitTry: различия между версиями
Zhum (обсуждение | вклад) (Создана новая страница размером == Как собрать пакет на git.alt, если есть srpm или tgz+spec. == Вводная - Вы хотите собр...) |
Нет описания правки |
||
Строка 12: | Строка 12: | ||
Где NAME - выданное при регистрации имя, а ~/.ssh/id_dsa.alt - сгенерированный при регистрации публичный ssh-ключ. | Где NAME - выданное при регистрации имя, а ~/.ssh/id_dsa.alt - сгенерированный при регистрации публичный ssh-ключ. | ||
1a. Далее выполняем: | |||
$ git config --global user.signingkey "user@altlinux.org" | |||
$ git config --global user.email "user@altlinux.org" | |||
$ git config --global user.name "Vasilij Pupkin" | |||
Здесь user@altlinux.org - идентификатор gpg-ключа для подписи, сгенерированный при регистрации, "Vasilij Pupkin" - Ваше имя и фамилия. | |||
2. Создаём каталог, где будет всё происходить (здесь - pakname). Можно использовать текущий каталог разработки (наверное?). | 2. Создаём каталог, где будет всё происходить (здесь - pakname). Можно использовать текущий каталог разработки (наверное?). | ||
Строка 31: | Строка 38: | ||
Здесь pakname - имя репозитория, выбранное нами ранее. | Здесь pakname - имя репозитория, выбранное нами ранее. | ||
7. Теперь надо подготовить содержимое каталога. '''Я до сих пор не уверен, что делаю всё верно, пусть старшие товарищи опишут здесь возможные правильные варианты.''' | 7. Теперь надо подготовить содержимое каталога. '''Я до сих пор не уверен, что делаю всё верно, пусть старшие товарищи опишут здесь возможные правильные варианты.''' | ||
Строка 69: | Строка 69: | ||
Если Вы подготовили новую версию пакета, выполните пп. 8-10. | Если Вы подготовили новую версию пакета, выполните пп. 8-10. | ||
Если Вы хотите собрать другой пакет, выполните пп. 2-10. | Если Вы хотите собрать другой пакет, выполните пп. 2-10. | ||
'''Хорошо бы сюда вставить ссылки на http://www.altlinux.org/Git.alt/Справочник, http://www.altlinux.org/Git.alt/Краткое_руководство, HASHER и другие полезные вещи.''' | '''Хорошо бы сюда вставить ссылки на http://www.altlinux.org/Git.alt/Справочник, http://www.altlinux.org/Git.alt/Краткое_руководство, HASHER и другие полезные вещи.''' | ||
[[Категория:Git.alt]] | [[Категория:Git.alt]] |
Версия от 18:31, 25 мая 2009
Как собрать пакет на git.alt, если есть srpm или tgz+spec.
Вводная - Вы хотите собрать пакет в git.alt, имея отлаженный в hasher srpm-пакет или spec и архив tgz. Что делать? Предполагается, что Вы член AltLinux Team и Вам выданы ssh- и gpg-ключи.
1. В ~/.ssh/config добавляем:
Host git.alt HostName git.altlinux.org Port 222 User git_NAME IdentityFile ~/.ssh/id_dsa.alt
Где NAME - выданное при регистрации имя, а ~/.ssh/id_dsa.alt - сгенерированный при регистрации публичный ssh-ключ.
1a. Далее выполняем:
$ git config --global user.signingkey "user@altlinux.org" $ git config --global user.email "user@altlinux.org" $ git config --global user.name "Vasilij Pupkin"
Здесь user@altlinux.org - идентификатор gpg-ключа для подписи, сгенерированный при регистрации, "Vasilij Pupkin" - Ваше имя и фамилия.
2. Создаём каталог, где будет всё происходить (здесь - pakname). Можно использовать текущий каталог разработки (наверное?).
$ mkdir pakname $ cd pakname
3. Создаём репозиторий на git.alt - на один пакет (spec) один репозиторий. В данном случае имя репозитория = имя пакета. Наверное, лучше всего всегда так делать.
$ ssh git.alt init-db pakname
4. Инициализируем git локально:
$ git-init
5. Теперь нужно настроить git. Добавляем в .git/config строки:
[remote "origin"] url = git.alt:packages/pakname.git fetch = refs/heads/master:refs/heads/master push = refs/heads/master:refs/heads/master
Здесь pakname - имя репозитория, выбранное нами ранее.
7. Теперь надо подготовить содержимое каталога. Я до сих пор не уверен, что делаю всё верно, пусть старшие товарищи опишут здесь возможные правильные варианты. Я делал так:
gear-srpmimport path-to/pakname.srpm
При этом у меня был проверенный заранее в хешере srpm.
8. Добавляем тег к сборке (указываем версию):
$ git tag -s "pakname-version"
Где version - версия собираемого пакета. Обязательно указывать ключ -s, а не -a, т.к. тег должен быть подписан.
9. Отправляем изменения на сервер
$ git push $ git push --tags
10. Если всё ОК, запрашиваем сборку:
$ ssh git.alt build pakname pakname-version
Здесь pakname - имя репозитория (=имя пакета), а pakname-version - имя тега.
11. Теперь можно посмотреть статус Ваших сборок:
$ ssh git.alt task ls
Если сборка не удалась, Вы обновили исходники и уверены, что уж теперь-то всё получится, выполните пп. 9-10.
$ git push $ ssh git.alt build pakname pakname-version
Если Вы подготовили новую версию пакета, выполните пп. 8-10.
Если Вы хотите собрать другой пакет, выполните пп. 2-10.
Хорошо бы сюда вставить ссылки на http://www.altlinux.org/Git.alt/Справочник, http://www.altlinux.org/Git.alt/Краткое_руководство, HASHER и другие полезные вещи.