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

这篇具有很好参考价值的文章主要介绍了解决git reset --soft HEAD^撤销commit时报错。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

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

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

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编译为换行符了,解决方案:
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 reset --soft HEAD^撤销commit时报错,解决,git

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

fatal: Not a git repository (or any of the parent directories): .git

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

git init

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

tips:输入log id回退更方便
如下

解决git reset --soft HEAD^撤销commit时报错,解决,git文章来源地址https://www.toymoban.com/news/detail-667875.html

到了这里,关于解决git reset --soft HEAD^撤销commit时报错的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • git reset soft mixed hard keep区别

    git reset 是 用于撤销之前的提交或修改仓库的状态。在使用 git reset 命令时,可以指定不同的模式来达到不同的效果。这些模式包括 --soft、–mixed、–hard 和 --keep。 该模式会将 HEAD 指向目标提交,但会保留目标提交之后的修改。此时,目标提交之后的修改会变成未暂存的修改

    2024年02月09日
    浏览(41)
  • Git Reset 详解:Soft、Mixed、Hard、Keep 选项

    在 Git 中, git reset 是一个强大的命令,用于移动 HEAD 指针和修改提交历史。它有不同的选项,包括 --soft 、 --mixed 、 --hard 和 --keep ,每个选项都有不同的用途和影响。本文将深入解析这些选项的作用和用法。 1. --soft 选项 --soft 选项执行一种“软”重置,它会移动 HEAD 指针到

    2024年02月22日
    浏览(37)
  • Git撤销add 、Git撤销commit、修改commit注释

    1、已经commit但未push,回退本地提交代码: 格式 参数说明: --mixed(默认)    不删除工作空间的改动代码,撤销commit,撤销git add file. --soft(常用) 不删除工作空间的改动代码,撤销commit,不撤销git add file,如果还需要提交,直接commit即可. --hard(慎用) 删除工作空间的改动代码,撤销commi

    2024年02月15日
    浏览(45)
  • git reset 四个模式:soft、mixed、hard、keep区别

    本地版本库 暂存区 工作区 soft 回退 保持 保持所有 mixed 回退 回退 保持所有 hard 回退 回退 完全回退 keep 回退 保持 保持另外的修改,仅回退提交的代码 git reset --soft 仅将本地版本库回退到指定版本,缓存区和工作区不做改变 git reset --mixed 将版本库回退的同时,将缓存区也清

    2024年01月19日
    浏览(35)
  • 掌握 Git Reset 三大模式:Soft、Mixed 和 Hard 的实战指南

    引言 在软件开发的世界中,版本控制是一项至关重要的任务。Git 作为目前最流行的版本控制系统之一,提供了一系列强大的命令和工具,其中 git reset 是其中之一,它是用来撤销提交、重置分支以及撤销暂存区的更改的重要命令之一。本文将深入探讨 git reset 命令的各种用法

    2024年04月15日
    浏览(52)
  • 撤销 git reset --hard HRAD^操作

    工作区 修改代码的地方 暂存区 执行git add后 本地版本库 执行git commit后 远程仓库 远程版本库 执行git push后 以下操作演示了 如何撤销git reset --hard HRAD^操作 亲测可用

    2024年02月08日
    浏览(35)
  • git reset --hard HEAD

    git reset --hard HEAD 是用于将你的工作目录重置回最后一次提交状态的命令。- git reset 是 git 的一个命令,用于重置你当前的 HEAD 到指定的状态。 --hard 标志告诉 git 要完全重置工作目录和暂存区,去匹配最后一次提交。在这个过程中,所有未提交的改动和新添加的东西都会被删除

    2024年02月10日
    浏览(36)
  • git commit之后,回退撤销commit

    在commit之后,发现有不需要提交的文件被提交上去了,好在还没有push到远端,需要撤回重新提交。 如果是用的是Sourcetree的话,打开Sourcetree操作如下 : 找到提交之前的版本的记录 右键这条提交记录,点击 将xxx重置到这次提交 : 选择 软合并 (软合并会保留这次的改动到本地

    2023年04月14日
    浏览(47)
  • ​如何撤销git commit​

    git commit后,还没执行push时, 如何撤销commit。 git add xxFiles git commit -m \\\"add xxx commit\\\" 一、解决方案 1. git reset --soft HEAD~1 执行此命令,本次的(这里HEAD~1)commit会被撤销,commit所对应的修改会撤回到暂存区当中, 即只是撤销了commit操作 ,比较安全,修改不会丢失 2. git reset --mix

    2024年02月11日
    浏览(32)
  • git撤销commit提交

            1)使用git log命令查看提交历史,找到要删除的记录的哈希值。         2)git rebase -i 命令指定要删除的哈希值。                 如git rebase -i abcdefgh # 表示删除该提交                    git rebase -i abcdefgh~1 # 表示要删除的提交的前一个提交。         3)git 会打开

    2024年02月17日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包