我在分支mybranch1
。 mybranch2
是从mybranch1
分叉的,并且在mybranch2
中进行了mybranch2
。
然后,在mybranch1
,我已经完成了git merge --no-commit mybranch2
它显示了合并时存在冲突。
现在我想丢弃所有东西( merge
命令),以便mybranch1
回到以前的状态。 我不知道我该怎么做。
#1楼
实际上,值得注意的是git merge --abort
只相当于git reset --merge
因为MERGE_HEAD
存在。 这可以在git help for merge命令中读取。
git merge --abort # is equivalent to git reset --merge when MERGE_HEAD is present.
合并失败后,当没有MERGE_HEAD
,可以使用git reset --merge
撤消失败的合并,但不一定使用git merge --abort
, 因此它们不仅是旧的和新的语法相同的东西 。
就个人而言,我发现git reset --merge
在日常工作中更有用。
#2楼
最新的Git:
git merge --abort
这会尝试将您的工作副本重置为合并前的状态。 这意味着它应该从合并之前恢复任何未提交的更改,尽管它不能始终可靠地执行此操作。 通常,您不应该与未提交的更改合并。
1.7.4版之前:
git reset --merge
这是较旧的语法,但与上面的相同。
在版本1.6.2之前:
git reset --hard
它会删除所有未提交的更改,包括未提交的合并。 有时,即使在支持上述命令的较新版本的Git中,此行为也很有用。
#3楼
假设您使用的是最新的git,
git merge --abort