У меня есть репозиторий Git, в котором есть ветка (локальная и удаленная), которая устарела. Я хотел бы обновить эту ветку с помощью основной ветки, но я не знаю, как это сделать. Также вероятно будет много конфликтов слияния.
Как я могу привести или обновить эту устаревшую ветку до того же состояния, что и главная ветка?
git
git-branch
Андрей
источник
источник
Ответы:
Обновите основную ветку, что вам нужно сделать в любом случае.
Затем один из:
Переустановите старую ветку на главную. Разрешите конфликты слияния во время перебазирования, и в результате получится обновленная ветка, которая сливается с мастер-классом.
Объедините свою ветку с мастером и разрешите конфликты слияния.
Объедините мастер в свою ветку и разрешите конфликты слияния. Затем слияние из вашей ветки в мастер должно быть чистым.
Ни один из них не лучше другого, просто у них разные модели компромиссов.
Я бы использовал подход rebase, который, на мой взгляд, дает более четкие общие результаты для последующих читателей, но это не что иное, как личный вкус.
Чтобы переустановить и сохранить ветку, вы должны:
В вашем случае проверьте старую ветку, затем
чтобы восстановить его против мастера.
источник
git rebase
:)git checkout $branch && git rebase $target
- в вашем случае проверьте старую ветку,git rebase master
чтобы затем восстановить ее против мастера.-f
option. Когда вы переписываете историю, требуется сильный толчок.