Стратегия ветвления в Git: во время git rebase: файл пар продолжает конфликтовать
Основная ветвь ветвления с именем MASTER. Создана ветвь объектов с именем FEATURE_BRANCH от MASTER. Создана ветвь подфункции с именем SUB_FEATURE_1.
FEATURE_BRANCH родительский элемент, из которого создаются основные элементы солнца. Эта ветка должна быть перебазирована с MASTER, и некоторые функции сделаны.
$ git checkout FEATURE_BRANCH
$ git rebase master
$ git push origin FEATURE_BRANCH
$ git checkout SUB_FEATURE_1
$ git push origin FEATURE_BRANCH
$ git checkout FEATURE_BRANCH
$ git commit --amend
$ git push origin FEATURE_BRANCH
$ git checkout SUB_FEATURE_1
$ git rebase FEATURE_BRANCH
При перебазировании ветки подфункции возникли конфликты слияния для файла x.txt
, Так поправил файл git add
это и git rebase --continue
,
Но сразу же, тот же файл имел конфликты слияния. Я снова исправил файл и снова исправил
Один и тот же файл имеет те же конфликты слияния. Как это происходит?
Правильно ли разветвляется государственность? Почему файл снова конфликтует?
1 ответ
Сначала активируйте git rerere
(как объяснено здесь), чтобы вам не пришлось повторять разрешение конфликта, которое вы делаете.
Но во-вторых, и что более важно, используйте git rebase --rebase-merges
(Git 2.18+)
Таким образом, вам не придется перебазировать sub_feature_1
ветвь: только один ребаз (из feature_1
) будет достаточно.
git checkout FEATURE_BRANCH
git rebase --rebase-merges master