GitHub - Лучшая практика применения изменений в двух ветвях (ветвь релиза и разработка) - PullRequest
0 голосов
/ 18 января 2020

Я работаю в небольшой компании, в которой на данный момент работают только два разработчика. Позвольте мне сначала сказать, что я не эксперт в Github, и я знаю, что наши текущие рабочие процессы не обязательно являются стандартными. Я не собираюсь переделывать весь наш рабочий процесс, просто разумное решение этой конкретной задачи c:

У нас есть две основные ветви: разработка и мастер. Мы используем ветвь Master для клиентских установок, поэтому она всегда стоит за разработкой, пока мы не объединим их перед основным выпуском.

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

Мое текущее решение заключается в создании ветви "Пользовательская функция" на основе Мастер филиал. Когда пользовательская работа будет завершена, мы создадим запрос на извлечение как для основной ветки, так и для ветви разработки. Поскольку ветка Master всегда имеет тот же код, что и разработка, только в более раннем состоянии - мне кажется, что это должно работать. Но, как я уже сказал, я не эксперт в Github, и я уверен, что это может быть опасно по ряду причин.

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

Любой совет будет высоко ценится!

Редактировать: I ' Я знаю, что это очень похоже на этот вопрос: Избегайте слияния мастера с веткой разработки

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

1 Ответ

0 голосов
/ 18 января 2020

Я рекомендую ознакомиться с GitFlow, так как это может стать решением вашей проблемы. https://datasift.github.io/gitflow/IntroducingGitFlow.html

По сути, вы правы, правильный способ сделать это - отойти от мастера, создать изменение в ветви, а затем объединиться с мастером и развиваться. Следуйте разделу «Исправления» в прикрепленной ссылке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...