git reset 撤销版本回到过去

git 管理我们的项目,会记录我们每一个时期发生的更改,每次 push 在日志当中的都会生成一个新的版本,通过 git reset 命令我们可以回到日志当中的任何一个时期的版本

在这里插入图片描述
reset 执行之后会修改本地库的版本,不同的参数会对其他两个区域发生不同的影响

  1. git reset --hard
    hard 参数会舍弃所有的未合入远端的更改,并且不保留撤销回来的版本与当前版本之间所发生的更改
    在这里插入图片描述
    在上图中我们可以看到,在执行 git reset --hard 之前我们在工作区、暂存区、本地库都有相应的更改,这些更改都是在本地发生的,没有合入远端代码库,在执行之后本地状态非常干净,不管是工作区、暂存区还是本地库的更改都被抛弃,这些更改不能通过日志中的版本撤回,在编辑器进行重启之前,可以通过 Ctrl + z 进行撤销
  2. git reset --mixed
    mixed 保留撤销回来的版本与当前版本之间所发生的更改,并且将这些更改放入工作区
    在这里插入图片描述
    在 reset 之前我们看一下状态(git status),工作区、暂存区和本地库都有更改,在 --mixed 之后我们看到,所有的更改全部回退到了工作区
  3. git reset --soft
    soft 也保留撤销回来的版本与当前版本之间所发生的更改,而 soft 是将所有经过 commit 操作的更改回退到本地库
    在这里插入图片描述
    在 reset 之前我们看一下状态(git status),工作区、暂存区和本地库都有更改,在 --soft 之后我们看到,只有暂存区发生了更改,并且将所有经过 commit 操作的更改回退到暂存区,而工作区的更改没有受到影响
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值