【发布时间】:2021-09-18 03:26:04
【问题描述】:
我做了什么:
git checkout -b newbranch
对此分支进行了几处更改。那么:
git merge oldbranch
对newbranch 的任何更改都未提交,因此我无法回滚。现在这些更改都没有应用,只有来自oldbranch 的代码。有没有办法撤消合并?另外我下次应该怎么做,或者我做错了什么?请帮忙。
我尝试了什么:
我在合并之前在newbranch 上使用了git stash,所以我尝试使用git apply,但这似乎也不起作用。
编辑:我认为在错误的时间也使用了 gut stash 什么的,因为我能看到的唯一变化是一行,我对 git 是全新的。
【问题讨论】:
-
你做错的很简单:当你有未提交的更改时不要执行合并。将它们提交到某处,或use "git stash" to store them temporarily。
-
在当前版本的 Git 中,如果您进行了任何更改,
git merge通常会拒绝启动。不过,快进操作有一个例外。你使用的是什么版本的 Git?git merge命令的输出是什么? -
@IMSoP 我使用了 git stash,然后我尝试使用 git apply,我应该使用不同的命令来应用这些更改吗?
-
如果您隐藏了更改,然后阅读我链接到的手册页,它会告诉您可以执行的所有命令。另外,下次你问这样的问题时,不要漏掉这样的细节——这会让整个问题变得完全不同!
-
@IMSoP 我编辑了这个问题。谢谢你。我会试试的。