解决git reset --soft HEAD^撤销commit时报错

今天在使用git回退功能的时候,遇到以下错误:

解决git reset --soft HEAD^撤销commit时报错

问题: 在进行完commit后,想要撤销该commit,于是使用了git reset --soft HEAD^命令,但是出现如下报错:

css 复制代码
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>...]'

查了下原因可能有两种:

  1. 因为cmd控制台中换行符默认是'^ ',而不是\ ,所以^符号被git编译为换行符了,解决方案:
css 复制代码
git reset --hard "HEAD^"
git reset --hard HEAD~[return times]
  1. 该仓库到目前为止只有commit过一次代码,故已经是head版本,也会报这样的错,无需关心直接commit或者rm即可

原因猜想 : 想要撤销的commit都是第一次的commit,此时使用git reset --soft HEAD^命令就会报错。因此,推测可能是第一次commit的原因,导致命令无法执行。

解决方法 :可以使用git update-ref -d HEAD命令来实现想要的效果。尝试过后,发现commit被成功撤销,仍然保留了add后的结果。

Git提示 fatal: Not a git repository 错误解决方法

css 复制代码
fatal: Not a git repository (or any of the parent directories): .git

提示说没有.git这样一个目录,解决办法如下:

css 复制代码
git init

然后在进行操作就可以了。

tips:输入log id回退更方便

如下

相关推荐
zttbee6 小时前
git命令
git
mister_guo1 天前
开发指南:Git日常维护与常用命令
git
鶴哥只手遮天1 天前
Git 2.56 源码深度剖析:为 Git 3.0 铺路的架构重构
git·开源
小此方1 天前
「插曲:Git」标签管理篇:理解Tag标签、为指定提交打标签、查看标签详情与附注标签
git
Madison-No71 天前
多语言聊天大模型--测试报告
linux·git·python·selenium·jmeter·自动化·postman
小此方1 天前
「插曲:Git」多人协作篇:远程分支创建与关联、多人协作冲突解决、Feature分支开发与合并、git remote prune清理失效分支
git
可乐ea2 天前
Git 基础设施重建:智能体规模开发下的读写解耦
大数据·git·elasticsearch·分布式存储·git基础设施·智能体规模开发·读写解耦
信可维2 天前
AI 说「改完了」怎么确认真改完了:git diff + 测试 + 一张验收表的 3 步复核
人工智能·git
Sun子矜2 天前
Git+Gitee 新手教程精简归纳版
git·gitee
亿道电子Emdoor2 天前
【Perforce】Klocwork-kwgcheck图形化界面无法打开如何解决
git·python·github