git - 如何撤销有冲突的 git merge

标签 git git-merge git-merge-conflict

我在分支 mybranch1mybranch2 是从 mybranch1 派生出来的,并且在 mybranch2 中进行了更改。

然后,在 mybranch1 上,我完成了 git merge --no-commit mybranch2 说明 merge 时有冲突。

现在我想丢弃所有内容(merge 命令),以便 mybranch1 恢复到原来的状态。 我不知道该怎么做。

最佳答案

最新的 Git:

git merge --abort

这会尝试将您的工作副本重置为 merge 前的任何状态。这意味着它应该从 merge 之前恢复任何未提交的更改,尽管它并不总是可靠地这样做。通常,您无论如何都不应该 merge 未提交的更改。

1.7.4 之前的版本:

git reset --merge

这是较旧的语法,但与上面的语法相同。

1.6.2 之前的版本:

git reset --hard

删除所有未提交的更改,包括未提交的 merge 。有时,即使在支持上述命令的较新版本的 Git 中,此行为也很有用。

关于git - 如何撤销有冲突的 git merge ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5741407/

相关文章:

git - 从 GitHub.com 上 protected 分支恢复 merge 提交

java - 当没有可用的 jar 文件时,将另一个开源项目集成到 Android 项目中的规范方法是什么?

Git merge : take everything from "theirs" branch

git - 避免在 Git 中递归 merge

git - 在 Git 中列出冲突文件的最简单方法是什么?

git - git如何找出冲​​突中未 merge 的路径?

git - 冲突时如何使用 `their` merge git 中的分支

git - 将内容修改分配给文件路径的 git 启发式是什么?

git - merge 3 棵树的简单方法,无需触及索引或工作树

Git checkout - 切换回 HEAD