git reset HEAD~1 --soft 使我的暂存文件列表充满了我没有接触过的文件
git reset HEAD~1 --soft made my staged files list full of files I haven't touched
我不小心将两个文件提交到开发分支而不是我的功能分支,但幸运的是还没有推送它们。
所以我阅读了如何撤消它,以便保留我的更改并找到命令
git reset HEAD~1 --soft
在 运行 之后,我的暂存文件列表现在充满了更改、文件添加、文件删除等等。为什么?
鉴于您在错误的分支上完成了工作,此处适当的做法是找到某种方法将工作移至正确的分支。一种选择是从 develop
到 feature
:
中挑选不正确的提交
# 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
.
中删除该提交
我不小心将两个文件提交到开发分支而不是我的功能分支,但幸运的是还没有推送它们。
所以我阅读了如何撤消它,以便保留我的更改并找到命令
git reset HEAD~1 --soft
在 运行 之后,我的暂存文件列表现在充满了更改、文件添加、文件删除等等。为什么?
鉴于您在错误的分支上完成了工作,此处适当的做法是找到某种方法将工作移至正确的分支。一种选择是从 develop
到 feature
:
# 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
.