git reset HEAD~1 --soft 让我的暂存文件列表充满了我没有碰过的文件



我不小心提交了两个文件来开发分支而不是我的功能分支,但幸运的是还没有推送它们。

所以我阅读了如何撤消它,以便我将保留我的更改并找到命令

git reset HEAD~1 --soft

运行后,我的暂存文件列表现在充满了更改,文件添加,文件删除等等。为什么?

鉴于您在错误的分支上完成了工作,因此此处要做的适当做法是找到某种方法将工作移动到正确的分支。 一种选择是从developfeature挑选不正确的提交:

# from feature
git cherry-pick <SHA-1 of develop commit>

然后,从develop中删除不正确的提交:

# from develop
git reset --hard HEAD~1

请注意,如果您甚至还没有创建feature分支,那么解决方案会更简单一些:

# from develop
git branch feature
git reset --hard HEAD~1

这将从您提交develop点创建一个新的分支feature,然后从develop中删除该提交。

最新更新