这种情况发生在你的本地代码仓库,可能你add ,commit 以后发现代码有点问题,想要从取消
git reset ....
如果是撤销某个文件或文件夹:
首先使用你德使用git status 查看比提交的状态
使用 git revert ....
首先你得使用 Git log 查看提交历史
git log -p -2
git log -p -2
回退使用git revert
使用git revert 回退 他会把提交的东西全部删除,从文件件里面删除。慎用。一般不提倡使用revert
第一:
上面我们说的如果你已经push到线上代码库, reset 删除指定commit以后,你git push可能导致一大堆冲突.但是revert 并不会.
第二:
如果在日后现有分支和历史分支需要合并的时候,reset 恢复部分的代码依然会出现在历史分支里.但是revert 方向提交的commit 并不会出现在历史分支里.
第三:
reset 是在正常的commit历史中,删除了指定的commit,这时 HEAD 是向后移动了,而 revert 是在正常的commit历史中再commit一次,只不过是反向提交,他的 HEAD 是一直向前的.