windows中git reset --hard HEAD^ 执行报错

D:\j>git reset --hard HEAD^
More?
More?
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>...]'

报错原因

因为cmd中 ^ 是转义符号,相当于linux的\,当出现在行尾的时候含义是这行还没写完,无视行尾的换行符,下行的内容实际执行的时候理解为直接接在上一行尾上。所以你 ^ 结尾会提示你More?,就是让你输入下一行的内容。

解决方法

  1. 用双引号括上强行指定为字符串内容" ^ "
D:\jsr_Repository\learngit>git reset --hard HEAD"^"
HEAD is now at 01477b2 wrote a readme file
  1. 用两个 ^ ,即 ^ ^ ,前一个转义后一个代表一个没有特殊含义的字符^本身。
D:\jsr_Repository\learngit>git reset --hard HEAD^^
HEAD is now at 01477b2 wrote a readme file
Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐