Re[8]: 2AVK: кривой мерж, надо откатить
От: · Великобритания  
Дата: 26.04.16 17:06
Оценка: 204 (4) +2
Здравствуйте, Lexey, Вы писали:

L>В принципе, из релиза в мастер тоже можно делать cherry pick.

Можно, но лучше чтобы release был всегда замержен в master, т.е. был "behind".
На самом деле всё просто и логично если подумать.
Процессы такие:
  1. основная разработка — всегда в master
  2. хотфиксы в релиз делаются прямо на релизной ветке. Потом тут же мержим release в master.
  3. если какие-то точечные изменения уже сделанные в master нужно срочно зарелизить — делаем cherry-pick из master в release, потом опять — тут же мерж из release в master (по сути это хотфиксы, как в предыдущем пункте, но не с нуля сделанные, а зачерипиканные из готового).
  4. выкатывание очередного "большого" релиза, всех последних изменений — мерж из master в release (должен быть fast forward, ведь мы соблюдаем условие что release просто некая предыдущая версия master, т.е. behind).
Четвёртый пункт гарантирует, что мы в релиз выпускаем то, над чем активно работаем, а значит постоянно тестируем, а не непонятную сборную солянку из cherry-pickов.

Во втором (и соответственно в третьем) пункте можно действовать так:
  1. Переключились на release
  2. Сделали исправления, закоммитили (или зачеррипикали). Проверили, что всё работает.
  3. Переключаемся на master
  4. Делаем merge release. Проверили, что всё работает.
  5. Делаем push обоих веток git push origin release master
  6. Предыдущий пункт может провалиться, если кто-то уже успел поменять master. Тогда делаем pull (обязательно с merge, а не rebase) и снова push.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.