ведется проект есть 2 ветки TEST и HARD
каждая для своего сервера (тестовый и рабочий)
дык вот вопросы:
1) как правильно отлаженные изменения в TEST сливать в HARD
2) как снизить вероятность залива на сервер не той ветки
?
1. DlTA - 10 Июля, 2013 - 13:25:18 - перейти к сообщению
2. DelphinPRO - 10 Июля, 2013 - 13:34:13 - перейти к сообщению
1) merge, rebase. по-моему других вариантов нет.
3. caballero - 10 Июля, 2013 - 13:44:25 - перейти к сообщению
нормальный вариант только один - берем araxis и сливаем вручную
поэтому лично мне всегда дотаточно SVN
поэтому лично мне всегда дотаточно SVN
4. DlTA - 10 Июля, 2013 - 18:15:42 - перейти к сообщению
но всеже вернемся к гит
5. Stierus - 10 Июля, 2013 - 19:01:22 - перейти к сообщению
Цитата:
дык вот вопросы:
1) как правильно отлаженные изменения в TEST сливать в HARD
2) как снизить вероятность залива на сервер не той ветки
?
1) как правильно отлаженные изменения в TEST сливать в HARD
2) как снизить вероятность залива на сервер не той ветки
?
1)
git fetch
git checkout hard
git pull origin hard
git merge origin/test
#resolve conflicts/commit changes
git push origin hard
2) менять схему работы и на продакшн выкладывать тэги
6. Ch_chov - 10 Июля, 2013 - 19:16:49 - перейти к сообщению
DlTA пишет:
как снизить вероятность залива на сервер не той ветки
Странный вопрос у вас. Вы же сами эти ветки переключаете. Даже если нечайно не ту ветку включили, то можете тут же откатиться.
http://habrahabr[dot]ru/post/106912/
7. DlTA - 10 Июля, 2013 - 20:38:29 - перейти к сообщению
Stierus пишет:
судя из сегодняшних тестов нормально залить именно свою ветку получается только если делать #resolve conflicts/commit changes
git push origin hard
git push origin hard
git pull origin HARD:HARD
я не знаю что именно не так но даже есть нынешнее состояние находится на ветке HARD
то git push origin HARD сливает не то (не ту ветку) или не сливает, толком не разобрался.
Ch_chov пишет:
Странный вопрос у вас. Вы же сами эти ветки переключаете. Даже если нечайно не ту ветку включили, то можете тут же откатиться.
вот и говорю чтобы по максимуму защититься от человеческого фактора и не сделать случайно
как бы из манов расчитывал что если реп находится в нужной ветке то при git pull будет сливать состояние по ветке проекта, а оказалось что нет, нужно точно указывать что сливать.
(Добавление)
Stierus пишет:
тоесть насколько я понял, рабочая ветки типа 1 (несчитая всяких ответвлений на всякие фиксы) но на момент релизного состояния делается метка (тег) а на харде состояние приводится к нужной ветке?2) менять схему работы и на продакшн выкладывать тэги
все логично кроме 1 вещи, а как указать харду что при скачке нужно сразуже перейти в нужную метку? мало ли на каком состоянии будет находиться конечное состояние репа, что реально может на некоторое время поломать работу хард сервера, а хотелось бы по минимуму.
(Добавление)
Stierus пишет:
а вот не пойму, теги созданные локальном репе передаются на удаленный?2) менять схему работы и на продакшн выкладывать тэги
для наглядности :
локальный реп ---- удаленный реп ----- хосты (тестовы, и хард)
создал метку загрузил вроде все на удаленный, а на хостах меток не видно что не так?
8. Ch_chov - 11 Июля, 2013 - 06:28:09 - перейти к сообщению
DlTA пишет:
Можете сделать git хук, и проверять статус сервера при переключении веток. Хотя все равно не понимаю зачем это. Администратор, который имеет доступ на продакшен сервер и без этого имеет кучу более вероятных способов поломать его.вот и говорю чтобы по максимуму защититься от человеческого фактора и не сделать случайно
DlTA пишет:
а как указать харду что при скачке нужно сразуже перейти в нужную метку?
git checkout TAGNAME
DlTA пишет:
git push origin tag TAGNAME
создал метку загрузил вроде все на удаленный, а на хостах меток не видно что не так?
9. DlTA - 11 Июля, 2013 - 11:27:46 - перейти к сообщению
Ch_chov пишет:
вот так не видит меток после pullgit checkout TAGNAME
тоесть git tag ничего не выдате
Ch_chov пишет:
воооот что мне надо было)) +
git push origin tag TAGNAME
10. LIME - 12 Июля, 2013 - 06:32:11 - перейти к сообщению
git push origin --tags