Рабочий процесс Git для управления работой в нескольких ветках

Моя стратегия использования Git в качестве инструментов управления версиями для моих проектов

Я отслеживаю все свое развитие с помощью Git и всегда следую этой стратегии.

Стратегия вдохновленаУспешная модель ветвления Git.

Имею 2 постоянных филиала: осваиваю и развиваю.

Вот правила, которым я следую в своем распорядке дня:

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

  • Это быстрая функция, иначе последующие коммиты, которые я сделаю, не сломают код (или, по крайней мере, я на это надеюсь): я могу сделать коммит при разработке или сделатьбыстрая функциональная ветка, а затем объедините его, чтобы развить.

  • Для завершения функции потребуется более одной фиксации, возможно, потребуется несколько дней фиксации, прежде чем функция будет завершена и снова станет стабильной:Я делаю функциональную ветку, затем слейте, чтобы развить.


Если что-то на нашемпроизводственный сервер требует немедленных действий, как исправление, мне нужно решить как можно скорее, я делаюкороткая ветка исправлений, исправьте ошибку, протестируйте ветку локально и на тестовой машине, а затем объедините ее для освоения и разработки.


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


Вразработка ветки всегда будет в постоянном движении, поэтому его следует поставить на 'заморозить'при подготовке релиза. Код тестируется, и каждый рабочий процесс проверяется для проверки качества кода, и он готов к слиянию с мастером.


Каждый раз, когда разработка или другая ветвь исправлений объединяется с мастером,Я помечаю этос номером версии, поэтому, если что-то пойдет не так, легко вернуться к предыдущему состоянию.


Дополнительные руководства по git: