Я и моя команда используем шаблон ветви Git Flow с основной веткой, веткой исправлений / выпусков, ветвью разработки и ветвями функций. Мы размещаем все на GitLab.com, и недавно мы решили защитить ветки разработки и master от push-уведомлений, чтобы они принимали только запросы на слияние.
Наш обычный рабочий процесс заключается в следующем:
- (в разработке) git потяните , чтобы убедиться, что мы получили последние изменения с пульта
- git checkout -b feature / wonderfulFeature для создания новой функциональной ветви и автоматического перехода к ней
- Код того, что необходимо сделать в ветви
- git добавление / принятие изменения
- git оформить заказ и git потянуть еще раз, чтобы убедиться, что у нас есть последние изменения
- git функция проверки / wonderfulFeature
- git rebase развернуть или git rebase -i развернуть
- git pu sh -f функция происхождения / wonderfulFeature
- Открыть MR на GitLab
Но я столкнулся с проблемой: Меня воспитали, чтобы поделиться с коллегой веткой функций, и перебросили ее на разработку, чего не следует делать в соответствии с Золотым правилом перебазировки .
Если это не так посоветовал сделать ребаз в общих ветках, нужно ли просто заменить git rebase develop
на git merge develop
в моей ветке функций, чтобы убедиться, что она актуальна?
Кроме того, я уверен, что мы могли бы улучшить это рабочий процесс, поэтому нам не нужно git push -f
на origin feature/wonderfulFeature
каждый раз, когда мы хотим получить последнюю версию develop
.