git回退commit并删除远端提交记录
revert和reset的区别:
git reset
和git revert
都是属于重新恢复工作区以及远程提交的方式,但这两种操作有着截然不同的结果:
git reset
是将之前的提交记录全部抹去,将 head 指向自己重置的提交记录,对应的提交记录都不复存在;git revert
操作是将选择的某一次提交记录 重做,若之后又有提交,提交记录还存在,只是将指定提交的代码给清除掉。
1、回退到某次的提交,不删除远端记录
git revert head^ 或者 git revert --hard commid-id(指定提交id) git push origin master
例如:revert回退到test02
远端历史记录如下:
2、回退到本地某次的提交,并删除远端的记录
git log git reset head^ 或者 git reset --hard commid-id(指定提交id) git log
然后执行
git push origin master -f
再看远端的记录,发现已经删除了最后一次提交的记录;
回退版本,或者删除远端提交记录,一定要慎重!!!
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论