Skip to content

解决 git 合并未完成问题

关于

当我们在合并代码的时候,从远程合并分支后,发现这段代码并不是我们想要的,取消了合并,但是这时合并的请求已经发起,单纯的删除代码无法解决根本问题。当我们再合并别的代码的时候就会提示我们已经存在合并请求头了。

解决方法

因为当前合并状态已经中断,所以可以通过以下命令来进行退出。

  1. 可以直接提交当前所有文件为一次 commit 记录
git commit -m "fixing merge conflicts"
git push
  1. 如果不想提交当前内容,污染 commit 记录。可以通过 git merge --abort 来简单地退出合并。
git merge --abort

git merge --abort 选项会尝试恢复到你运行合并前的状态。 但当运行命令前,在工作目录中有未储藏、未提交的修改时它不能完美处理,除此之外它都工作地很好。

  1. 如果出于某些原因你想要重来一次,也可以运行 git reset --hard HEAD 回到上一次提交的状态。 请牢记此时任何未提交的工作都会丢失,所以请确认你不需要保留任何改动。

  2. 如果想要完成合并,而又不添加任何内容,可以使用 rm -rf .git/MERGE* 来完成操作,但是这个操作非常的粗糙暴力,慎用!


资料参考

Released under the MIT License.