git reset三种模式详解

使用git reset命令可回退到指定的commit,本质其实就是将HEAD指向分支的commit移动到了目标的commit上面

git reset命令有三种模式可供使用,分别是:

git reset --mixed(不加参数默认为此模式)

git reset --sort

git reset --hard

下面分别对这三种模式的使用做一一介绍

一 git reset --mixed(不加参数默认为此模式)

此种模式下repository区域内容与目标节点内容保持一致,暂存区索引也和目标节点内容保持一致,那么当前节点和目标节点之间的改变就会放在工作区域。

常用场景: 1.使用git reset (--mixed) HEAD 恢复当前版本的暂存区,修改内容重新放回到工作区。IDEA中revert操作就是使用git reset HEAD  + checkout --file 命令还原工作区的修改。

                    2.git reset HEAD^1  + checkout --file 命令可以还原到上个版本的修改, 例如在上个版本中找回被删除的文件

                    3.可以用来合并目标节点和当前节点之间没有必要的提交

 

二 git reset --sort

此种模式下repository内容与目标节点保持一致,暂存区和工作区内容保持不变,当前节点和目标节点的改变放在暂存区

三 git reset --hard

此种模式下repository、暂存区、工作区的内容与目标节点内容保持一致,意思是说所有的内容将回退到目标节点,所以此命令使用时要慎重。

          

                   

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值