После того, как я переключил ветки, я применил тайник (как показано ниже), что привело к автоматическому слиянию.
git stash apply
Auto-merging src/clojure/project_src.clj
On branch upgrade_project
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: src/clojure/project_src.clj
no changes added to commit (use "git add" and/or "git commit -a")
Я попробовал git revert HEAD
, который отменил фиксацию (а не автоматическое слияние). Как я могу отменить автоматическое слияние?
Чтобы прервать слияние, вы могли бы сделать
git merge --abort
Но теперь, когда вы отменили свой последний коммит, и если вы еще не отправили это неудачное состояние на удаленное, я бы предложил сбросить до точки, где вы были до первого плохого тайника:
git reset --hard HEAD^
На этом этапе вы можете повторить stash apply
и объединить его по-другому или просто не применять тайник, но в любом случае вы вернулись к исходной точке.
Я сделал следующее, что сработало.
Во-первых, я сделал git revert для коммита, который отменил мой последний коммит. Что вернуло меня обратно к автоматическому слиянию, которое произошло в результате применения git stash.
Затем я применил git reset --merge upgrade_project
, что вернуло автоматическое слияние.
Редактировать: я также узнал, что git merge --abort
и git reset --merge
работают одинаково для слияния, которое происходит.
Спасибо за ответ! @RomainValeri