git reset --hard HEAD^后显示more?的解决方案

2021年11月21日 阅读数:12
这篇文章主要向大家介绍git reset --hard HEAD^后显示more?的解决方案,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

在windows的cmd控制台下操做git,想要回滚到上一次提交,可是输入​​git reset --hard HEAD^​​后就显示​​more?​​,多按几回回车后就报错以下,如何解决呢?git

fatal: ambiguous argument 'HEAD ': unknown revision or path not in the working tree. Use '--' to separate paths from revisions, like this: 'git <command> [<revision>...] -- [<file>...]'shell

这是由于cmd控制台中换行符默认是​​^​​,而不是​​\​​ ,因此它的more?的意思是问你下一行是否须要再输入,而​​^​​ 符号就被当作换行符而被git命令忽略掉了。windows

解决方法有以下几种:bash

加引号:git reset --hard "HEAD^"
加一个^:git reset --hard HEAD^^
换成~:git reset --hard HEAD~ 或者 git reset --hard HEAD~1
~ 后面的数字表示回退几回提交,默认是一次

固然还能够换成git bash,powershell等就不会出现这种问题了ide