版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ljt735029684/article/details/85401619
首先,工作区即我们能看到的文件夹的文件,暂存区则是git用来缓存的区域,版本库就是git每次commit后的保存的地方。
如图就是各命令执行后的情况,至于分支情况,就等下次有机会再说吧
撤回git add
撤回上次所有add
git reset HEAD
撤回上次add的某个文件
git reset HEAD 【文件路径】
撤回git commit
如果只是commit的信息填错
git commit --amend
如果还有文件提交错
git reset --soft HEAD~
或者
git reset HEAD~
两个命令的区别可以看上面的图
git reset
git reset –mixed【commit_id】
此为默认方式。保留本地源码,回退commit和index信息
git reset –soft 【commit_id】
回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
git reset –hard 【commit_id】
彻底回退到某个版本,本地文件源码也会变为上一个版本的内容。想清楚再用。此命令会改变工作区也就是你现在看到的文件夹里的内容,慎用
其中HEAD~3表示前3个版本,HEAD~4表示前4个版本。commit_id也可以通过git log查看
可根据图片对比。
如有错误,欢迎提出