Ответ 1
если вы не совершаете, вы можете ввести
git merge --abort
так же, как предлагала командная строка.
Я работаю над проектом, использующим Git как VCS. У меня есть ветка xyz
вырезанная из основной линии мастера. Поработав некоторое время, я совершил свой код и взял тянущуюся ветку.
Потянуть было хорошо. Затем я объединил код с мастером. После слияния в некоторых файлах были проблемы. Я не передал код после слияния. Может кто-нибудь, пожалуйста, объясните, как я могу прервать это слияние и принести свою ветку, где я сейчас работаю, в состояние, где это было до того, как я слил его?
если вы не совершаете, вы можете ввести
git merge --abort
так же, как предлагала командная строка.
Если вы выполняете "git status" при конфликте слияния, первое, что git показывает, это то, как прервать слияние.
По правде говоря, есть много и много ресурсов, объясняющих, как это сделать уже в Интернете:
https://git-scm.com/blog/2010/03/02/undoing-merges.html
Поэтому, я думаю, я просто подведу некоторые из них:
git revert <merge commit hash>
Это создает дополнительный "revert" commit, говорящий, что вы сбрасываете слияние
git reset --hard <commit hash *before* the merge>
Эта история сброса до слияния. Если вы совершили после слияния, вам понадобится cherry-pick
.
Но, честно говоря, этот путеводитель здесь лучше, чем все, что я могу объяснить, с диаграммами! :)