Вход:  Пароль:  
FreeSource: AltLinux/Sisyphus/devel/gear/kis ...
Free Source | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация |
Эта страница была перенесена на altlinux.org. Текст на freesource.info заморожен.

Simple GIT+GEAR


Небольшая заметка по поводу git+gear для тех кто не хочет очень сильно вникать (Keep It Simple):


Случай номер один — готового git репозитория у нас нет и такого пакета в Сизифе тоже нет:
a) если src.rpm тоже ещё вообще не существует:

и читаем про git.


б) если существует, то втягиваем его и едем дальше (пп. 6 и далее из «случая номер два»).


Случай номер два — готового git репозитория у нас нет, но пакет уже есть в Сизифе:
1) Идём на ftp://ftp.altlinux.org/pub/distributions/archive/Sisyphus/index/%name, где %name — это имя пакета.
2) Вытаскиваем все релизы пакета из архива. Например, через rsync:

3) Создаём где-нибудь папку %name, в которой у нас будет git репозиторий
4) Запускаем в ней git init
5) Копируем в неё все src.rpm которые мы хотим закатать в git
6) Последовательно, один за одним начинаем импортировать в репозиторий все релизы пакета командой gear-srpmimport <%name-%version-%release.src.rpm>.
7) Добавляем (лучше не так, см. комментарии) в ~/.gitconfig следующее:

8) Если нам надо обновить исходники (к примеру, с версии 0.1 до 0.2) то в этом нам поможет gear-update
9) Правим spec файл (как минимум, нужно увеличить Release, выполнить add_changelog).
10) gear-commit -a
11) Сборка выполняется вот так:
gear-rpm --commit -bb --target=i586
12) buildreq гонять вроде так:
gear-buildreq
13) Когда спек приготовлен к употреблению, отметим что это (к примеру, 0.2-alt1 релиз):
git tag -a 0.2-alt1
14) Создаём репозиторий на git.altlinux.org:
ssh git.alt git-init-db <%name>
15) Копируем локальный репозиторий на сервер:
git push --all git.alt:packages/<%name>
16) С недавнего времени, для публикации тегов нужна отдельная команда:
git push --tags git.alt:packages/<%name>


17) С учётом того, что автоматическая сборка пакетов из gear ещё не началась, надо влить src.rpm по старинке в /i/S/ на сборку.


Продолжение следует...


Страницы, ссылающиеся на данную: AltLinux/Sisyphus/devel/git


 
Файлов нет. [Показать файлы/форму]
Комментарии [Скрыть комментарии/форму]

<vsu> icesik: это обычно не в .git/config суют, а в export GIT_AUTHOR_NAME и GIT_AUTHOR_EMAIL
<vsu> icesik: ещё есть GIT_COMMITTER_NAME и GIT_COMMITTER_EMAIL
<vsu> icesik: git-repack -a -d к выливанию вообще не имеет отношения
<icesik> vsu: QUICKSTART.ru_RU.KOI8-R по gear написано что можно и так и так
<icesik> vsu: это я не правильно выразился.
<vsu> icesik: просто .git/config придётся править в каждом репозитории
<icesik> vsu: я знаю
<icesik> vsu: я не понимаю разницы между GIT_AUTHOR_NAME и GIT_COMMITTER_NAME
<vsu> icesik: это такой изврат в git
<vsu> icesik: если ты берёшь чужой коммит, например, через git-cherry-pick, author там сохраняется, а в committer прописывается твоё имя
<icesik> vsu: только хотел тоже самое написать
<vsu> icesik: предполагается, что в author будет сохраняться изначальный автор изменения
<icesik> vsu: заметка вообще правильная? я не ошибаюсь?
<vsu> icesik: и даты там тоже две
<vsu> icesik: ну общий принцип правильный

-- MichaelShigorin (2006-10-25 20:51:21)