[devel] git
REAL
real на kemsu.ru
Пн Мар 16 09:58:46 MSK 2015
16.03.2015 13:42, Hihin Ruslan пишет:
>> И при каждом "git remote
>> update" получаем последние версии как в сизифе, так и у себя
>> на "свалке" на git.alt (очень полезно, когда хочется
>> поработать и на работе, и дома продолжить, не таская всё на
>> флэшке).
>
> а вот с этого места поподробнее :)
Давайте возьмём к примеру пакет trilinos (я его новую версию уже
вторую неделю ковыряю), но, допустим, я только начал, и у меня есть
только новые исходники, но и только. Следующие действия были бы
одинаковы и на работе, и дома:
1. git clone git.alt:packages/trilinos.git
cd trilinos
При этом "origin" создаётся автоматом, и источникм служит
git.alt:packages/trilinos.git .
2. Подтягиваю себе то, что собрано в сизиф:
2a. git remote add gears git.alt:/gears/t/trilinos10.git
(исторически сложилось так, что суффикс у него 10, и я его не меняю,
ибо при смене версии не ломается ABI).
2b. git remote update gears
3. Проверяю, не заливал ли кто обновлений:
git merge gears/sisyphus
Если git сказал, что обновлений не найдено, значит, хорошо, если они
были, разрулив конфликты,
4. тут же заливаю обновления себе на git.alt:
git push --all origin
git push origin --tags
Теперь представим, что я на работе, у меня тут скачаны новые
исходники, я их положил, закоммитил, залил на git.alt (см. шаг 4).
Далее делаю всякие неизбежные вещи вроде правки спека, исходников и
прочее. Звенит будильник, говоря, что пора домой, а работа в самом
разгаре. Делаю коммит всего, что натворил, заливаю на git.alt (см. шаг
4). Прихожу домой, захожу в каталог trilinos, делаю
git remote update
git merge origin/master
Таким образом, всё, что на работе натворил, дома оказывается у меня
под рукой. Дальше обычно делается diff того, что натворил на работе
(кроме укладки новых исходников), убивается последний коммит,
прикладывается сгенеренный diff, получается в точности ситуация,
которая была к моменту звонка будильника.
--
REAL aka Евгений Ростовцев, программист ЦНИТ КемГУ
Подробная информация о списке рассылки Devel