使用git reset --soft HEAD^无法撤销提交,出现More?提示的问题咨询
关于执行
git reset --soft HEAD^时出现「More?」提示的问题解答 嘿,这个情况其实是Windows命令提示符(CMD)的小特性搞的鬼,我来给你掰扯清楚:
为什么会出现「More?」?
在Windows的CMD环境里,^是换行续行的转义字符——当你输入HEAD^时,CMD会觉得你还没把命令写完,想要继续输入后续内容,所以就弹出「More?」提示等着你补全命令。但这并不是Git本身的要求,完全是CMD的锅!
怎么解决?
给你两个简单的方案:
方案一:换个终端执行
直接用Git自带的Git Bash,或者Windows的PowerShell来运行命令,这两个环境里^不需要转义,直接输入:git reset --soft HEAD^就能正常执行软撤销提交的操作了。
方案二:在CMD里转义
^
如果非要用CMD,把命令里的^换成^^(两个连续的^),这样CMD就会把^^解析成一个^传给Git,命令变成:git reset --soft HEAD^^执行这个命令就不会再弹出「More?」了。
执行成功后会怎么样?
不管用哪个方案,只要命令执行成功,你的最后一次提交就会被软撤销——修改内容会保留在暂存区和工作区里,接下来你就可以继续修改代码、重新暂存,然后用git commit生成新的提交啦。
内容的提问来源于stack exchange,提问作者cyber_angel
相关产品推荐
相关产品推荐

