git的几种回滚 git revert 和 git reset的区别:
强烈建议:对HEAD不熟的话最好不要用HEAD,直接用commitID吧,我遇到的问题:reset HEAD~1之后,可能是别人提交了
修改的,导致出现很多不是我做的修改记录需要提交。
1.回滚版本,但是会在commit记录中新加一条记录revert的commit记录:git revert HEAD~1 执行 之后,会有提交信息,
提交后git log
2.回滚版本,保留本地的修改记录,可以重新直接commit用:git reset HEAD~1之后,再次看git log,执行完后,
commit3被删除了;但是test3.c还在本地缓存区,运行git status,可以看见提示test3.c可以用git add包含该文件
3.回滚版本,不保留代码修改,即是放弃所有修改,重新提交需要重新进行所有代码:若执行git reset --hard HEAD~1
执行完后,test3.c也被删除了,查看git status,无任何变化。
如下:
推荐博客:
还有一篇非常好的使用示例博客:http://blog.csdn.net/n289950578/article/details/24738427
讲解博客:http://www.cnblogs.com/0616--ataozhijia/p/3709917.html
相关文章
- 08-02GIT 的merge、rebase和cherry-pick区别和使用示例
- 08-02Git 中 Reset、Revert、Checkout的区别
- 08-02git 的 HEAD~ 和 HEAD^ 区别
- 08-02Git fetch和git pull的区别
- 08-02在Pycharm中使用Git进行版本控制时,undo commit和revert的区别
- 08-02git reset与git revert的区别
- 08-02Mercurial和Git的主要区别(zz)
- 08-02GIT和SVN之间的区别及基本操作对比
- 08-02git的reset回退和revert撤销操作
- 08-02Git之恢复之前版本的两种方法reset、revert(图文详解)