Я посмотрел на более посты на мерзавец Rebase вызывая ветвь утечки, но хотели бы получить материалы от вас, что лучше использовать: мерзавец перебазироваться против мерзавца сливаться в следующем сценарииGit перебазироваться вызывает филиальные отвлечения
Рассматривайте У меня есть Главный филиал и филиал-А
Ветвь-А - это не только локальная ветка, но и удаленная ветка.
Workflow:
git co branch-A
git pull
Make some changes to branch-A
git add
git commit
git push
Теперь еще изменения произошли мастер
git co master
git pull
git co branch-A
git rebase master
Теперь у меня есть куча конфликтов, мерзавец просит меня разрешить конфликты, добавлять и применять мерзавец перебазироваться --continue Я разрешаю конфликты
git add
git rebase --continue
Теперь я получаю сообщение о том, что ваша ветка и происхождение/ветвь-A расходятся и имеют 3 и 1 разные коммиты соответственно. Используйте git pull, чтобы объединить удаленную ветку в вашу. Теперь я выполняю GIT тянуть из ветви-A
git pull
Теперь я получаю кучу сообщений для Auto-слияния и, наконец, большинство файлов имеют конфликт, и я в конечном итоге решить все те конфликты, которые я решил до выдачи GIT перебазироваться - - продолжайте еще раз. После разрешения всех конфликтов я выдаю:
git add
git ci -m "Fixing the conflicts"
git push
Теперь все работает хорошо, и все конфликты разрешены. Но для этого я дважды делал разрешение конфликта, один до переустановки git - продолжал и другие после того, как сделал git pull из-за разветвления ветки.
Так что мой вопрос, так как филиал-А является удаленным, он даже прямо в первую очередь издать перебазирование или должен я просто следовал,
git co master
git pull
git co branch-A
git merge master
<resolve conflicts>
git add
git commit
git push
Извините за длинный пост, но я чувствовал, было бы намного яснее поставить то, что я точно видел. Большое спасибо за прохождение моего сообщения, и ваши отзывы очень ценятся.
Отлично! Большое спасибо за разъяснение. – sriram
Подсказка: есть опция 'git pull --rebase' ... – SzG