Отменить git Auto-merge - PullRequest
       86

Отменить git Auto-merge

1 голос
/ 08 апреля 2019

После того, как я переключил ветки, я применил stash (как показано ниже), что привело к автоматическому слиянию.

  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, который отменил фиксацию (не автоматическое слияние). Как я могу отменить автоматическое слияние?

Ответы [ 2 ]

2 голосов
/ 08 апреля 2019

Я сделал следующее, что сработало.

Сначала я сделал git revert на коммите, который отменил мой последний коммит. Это вернуло меня к автоматическому слиянию в результате применения git stash.

Затем я применил git reset --merge upgrade_project, который отменил автоматическое слияние.

Редактировать: я также узнал, что git merge --abort и git reset --merge оба работают одинаково для выполняемого слияния.

2 голосов
/ 08 апреля 2019

Чтобы прервать слияние, вы могли бы сделать

git merge --abort

Но теперь, когда вы отменили свой последний коммит и, если вы уже не перевели это неудачное состояние в удаленное, я бы предложил сбросить его до точки, в которой вы находились до первого плохого тайника:

git reset --hard HEAD^

В этот момент вы можете повторить попытку stash apply и объединить ее по-другому, или просто не применять тайник, но в любом случае вы вернетесь к исходной точке.

...