详解gitreset--hard和gitreset--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,执⾏结果为
到此这篇关于详解git reset --hard 和 git reset --soft区别的⽂章就介绍到这了,更多相关git reset --hard和git reset --soft内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!git使用详解
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论