Объединение одного изменения в несколько ветвей в Git
Я привык иметь одну основную ветку (мастер) и работать в ветвях тем. Но сейчас я работаю над проектом с двумя основными ветвями (мастерскими и экспериментальными), и я не уверен, как наилучшим образом объединить ветку темы в обоих?
Правильно ли это сделать? Если нет, кто-то может сообщить мне правильный путь.
(master)$ git checkout -b bugfix
# do bug fix here
(bugfix)$ git commit -a -m 'Fixed bug.'
(bugfix)$ git checkout master
(master)$ git merge bugfix
(master)$ git checkout bugfix
(bugfix)$ git rebase experimental
(bugfix)$ git checkout experimental
(experimental)$ git merge bugfix
Спасибо.
Ответы
Ответ 1
Не делайте перезагрузку, и вы настроены. Просто объедините ветвь bugfix
в каждую ветвь, в которой вы нуждаетесь.
(master)$ git checkout -b bugfix
# do bug fix here
(bugfix)$ git commit -a -m 'Fixed bug.'
(bugfix)$ git checkout master
(master)$ git merge bugfix
(bugfix)$ git checkout experimental
(experimental)$ git merge bugfix
При выполнении rebase вы создаете фиксацию, похожую на уже объединенную фиксацию, но другую. Выполнение rebase, за которым следует checkout + merge, по существу эквивалентно вишневому набору фиксации ошибок.