本地版本库暂存区工作区soft回退保持保持所有mixed回退回退保持所有hard回退回退完全回退keep回退保持保持另外的修改,仅回退提交的代码
- git reset --soft 仅将本地版本库回退到指定版本,缓存区和工作区不做改变
- git reset --mixed 将版本库回退的同时,将缓存区也清空,但工作区不做变更
- git reset --hard 将三个区域同时退回
- git reset --keep 将版本库回退的同时,将缓存区也清空,工作区中文件如果当前版本和退回版本之间没有发生过变动,则工作区的修改保持不便;如果发生了变动,并且工作区也进行了修改,需要自行合并(或者冲突解决)
keep介绍
首先这里创建了两个文件a.txt 和 b.txt
在a.txt变更2中仅修改了a.txt;b.txt没有变更
然后将b修改后,进行了add操作,提交到了暂存区:使用git status可以看到暂存区记录了b.txt的修改
现在我们再分别将a、b文件进行修改
如果直接使用git reset --keep进行回退会发现报错,因为上一个版本修改了a文件,并且我们工作区也对a进行了修改,这时git不允许回退。
版权归原作者 vay_ee 所有, 如有侵权,请联系我们删除。