怎么撤销 git commit 提交的代码

问题

比如:我在项目里面添加了一个新的组件 gitTest.vue

在这里插入图片描述

写完之后,我就提交代码:

git add .
git commit -m '提交git测试组件'

在这里插入图片描述

git reset 命令

菜鸟教程:git reset 命令

git reset 命令用于回退版本,可以指定退回某一次提交的版本。

git reset 命令语法格式如下:

git reset [--soft | --mixed | --hard] [HEAD]
  • -mixed 为默认,可以不用带该参数,用于重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变。
    • 不删除工作空间改动代码,撤销 commit,并且撤销 git add . 操作
    • git reset --mixed HEAD^git reset HEAD^ 效果是一样的
  • –soft 参数用于回退到某个版本
    • 不删除工作空间改动代码,撤销 commit,不撤销 git add .
  • –hard 参数撤销工作区中所有未提交的修改内容,将暂存区与工作区都回到上一次版本,并删除之前的所有信息提交
    • 删除工作空间改动代码,撤销 commit,撤销 git add .

实例:

$ git reset HEAD^            		# 回退所有内容到上一个版本  
$ git reset HEAD^ hello.php  		# 回退 hello.php 文件的版本到上一个版本  
$ git reset 052e             		# 回退到指定版本
$ git reset --soft HEAD~3    		# 回退上上上一个版本
$ git reset --hard HEAD~3     		# 回退上上上一个版本  
$ git reset --hard bae128          	# 回退到某个版本回退点之前的所有信息。 
$ git reset --hard origin/master  	# 将本地的状态回退到和远程的一样 

注意:谨慎使用 –hard 参数,它会删除回退点之前的所有信息。

HEAD 说明:

  • HEAD 表示当前版本
  • HEAD^ 上一个版本
  • HEAD^^ 上上一个版本
  • HEAD^^^ 上上上一个版本

可以使用 ~数字表示

  • HEAD~0 表示当前版本
  • HEAD~1 上一个版本
  • HEAD~2 上上一个版本
  • HEAD~3 上上上一个版本

解决

执行完commit后,想撤回commit,怎么办?

通过上面的 git reset 命令学习,可以知道:使用下面的命令

# 回退上一个版本,然后需要删掉代码
git reset --hard HEAD~1

执行完我们发现已经回退到了提交前的状态

可以输入查看日志命令:

git log --oneline -10

在这里插入图片描述

拓展

推荐阅读:Git 工具 - 重置揭密

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凯小默

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值