主页 > 知识库 > 详解git reset --hard 和 git reset --soft区别

详解git reset --hard 和 git reset --soft区别

热门标签:铁路电话系统 呼叫中心市场需求 美图手机 服务器配置 银行业务 智能手机 网站文章发布 检查注册表项

有时候,进行了错误的提交,但是还没有push到远程分支,想要撤销本次提交,可以使用git reset –-soft/hard命令。

1、二者区别:

git reset –-soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可;
git reset -–hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容,撤销的commit中所包含的更改被冲掉;

2、具体用法如下:

使用git log命令查看本地的所有提交

现在想要撤销最后一次提交,即上图中“OTMS-25838: rollback the modification in OrderDto”这个commit;

(1)git reset --hard使用示例:

使用命令git reset --hard 1c38838ad39b396e271cb10e2146a1d673b4a2b9撤回制定版本号(不包括该提交)之前的所有提交。

注意:上述命令执行成功之后,会彻底返回到回退前的版本状态,新发生的变更将会丢失。对于部分发生了变更,但是变更部分的文件夹存在未提交的文件可能导致目录非空而删除失败,此时需要自行处置。

(2)git reset –-soft使用示例:

初始状态,可见当前分支最后一个提交是debug the initialization page

现在要撤销该commit,但是又不能撤销该提交包含的更改,使用git reset --soft,执行结果为

可见commit取消了,代码更改并没有取消。

到此这篇关于详解git reset --hard 和 git reset --soft区别的文章就介绍到这了,更多相关git reset --hard和git reset --soft内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • 详解git reset 加不加 --hard的区别

标签:乐山 沈阳 新疆 上海 沧州 长治 红河 河南

巨人网络通讯声明:本文标题《详解git reset --hard 和 git reset --soft区别》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266