Как мне добавить исправление обратно в ветку функций, используя gitflow?


10

Я начал использовать gitflow для проекта, и у меня есть выдающаяся ветвь функций, а также недавно созданное исправление. В соответствии с рабочим процессом gitflow исправление применяется как к основной, так и к развивающей ветвям, но ничего не сказано или не сделано в отношении существующих ветвей функций.

Тем не менее, я хотел бы включить изменения исправлений обратно в мою ветку функций, которая, насколько я могу судить, оставляет три варианта:

  1. Не включайте изменения. Если изменения были необходимы для функциональной ветви, она должна была быть частью функциональной ветви.
  2. Слияние развивается обратно в ветку возможностей. Похоже, это лучше всего соответствует рабочему процессу gitflow, но может привести к неупорядоченным коммитам.
  3. Перебазируем ветку функций на разработку . Это сохранит порядок фиксации, но перебазирование, по-видимому, полностью отсутствует в общем рабочем процессе gitflow.

Какова лучшая практика здесь?

git  gitflow 

Характеристика отрасли , как правило , должны быть очень кратковременным, это своего рода запах SCM будет слияние изменений Into них; нельзя ли просто завершить (или стабилизировать) ветвь объектов и объединить ее обратно?
Aaronaught

2
@ Хорошо, что эта функция не выполнена / может никуда не деваться. Основная ситуация заключается в том, что функция, на разработку которой уходит несколько дней, обнаружила ошибку, которая потенциально может повлиять на производственные данные. Тесты были написаны, исправление применено к мастеру / производству, но незавершенная функция все еще не работает из-за ошибки. Вы предлагаете объединить половинную функцию в основную линию разработки? Что произойдет, если функция не работает?

Ответы:


11

Я не вижу ничего плохого в том, чтобы переместить вашу ветку функций в разработку, чтобы получить последние исправления. На самом деле, может быть полезным частое перебазирование вашей функциональной ветви против разработки , так как она позволяет вам поддерживать свою ветку «в актуальном состоянии», что значительно упрощает слияние, когда вы переходите на эту стадию.


Да, оглядываясь на еще одно косвенное доказательство, в том числе объявление gitflow 0.2, в котором добавлена ​​перебазировка функций, указывает на то, что рабочий процесс git rebase также является рабочим процессом gitflow.

2
Интересно. Я не могу сказать, что я эксперт по Gitflow, но, насколько я понимаю, исправления были единичными коммитами против мастера, а не веток, и я просто выбрал их для разработки. Читая, думал, что я был совершенно неправ в этом.
jb510
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.