git reset

前言

首先解析以下这三个相关的状态和概念

  • HEAD:可以描述为当前分支最后一个提交。即本地的信息中的当前版本。(HEAD^表示HEAD的上一个版本,即当前版本的上一个版本)
  • Index:在工作副本修改之后执行过git add操作的版本文件,可以commit了的。
  • Working Copy:工作副本是你正在修改,但是没有执行任何git操作的文件。

git reset 命令用于回退版本,可以指定退回某一次提交的版本。
git reset 命令语法格式如下:

git reset [--soft | --mixed | --hard] [HEAD]

–hard

用法:

git reset --hard HEAD^ # 将当前分支回退到上一个commit之后的状态;即包括工作副本和index

–soft

实例:

git reset --soft HEAD^

--soft为软重置,上面的命令表示将当前版本恢复到未提交之前的状态;即当commit之后,需要取消commit恢复未commit的状态;此时Working Copy与Index的状态恢复至未commit之前一致.

–mixed

--mixed 为默认参数,可以不用带该参数.
git reset [HEAD]git reset --mixed [HEAD]是同一个含义.

实例:

git reset HEAD^            # 回退所有内容到上一个版本  

--mixed保留当前的所有文件,将HEAD指向指定的版本,并将期间的修改放入Working Copy中

其他说明

HEAD 说明:

  • HEAD 表示当前版本
  • HEAD^ 上一个版本
  • HEAD^^ 上上一个版本
  • HEAD^^^ 上上上一个版本
    以此类推…

可以使用 ~数字表示:

  • HEAD~0 表示当前版本
  • HEAD~1 上一个版本
  • HEAD~2 上上一个版本
  • HEAD~3 上上上一个版本
    以此类推…

参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值