在平时的工作中,经常会遇到git版本回退的问题.这里总结一下遇到的情况供需要的时候查询
1 当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令
git checkout -- file
2 当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令
git reset HEAD file
就回到了场景1,第二步按场景1操作.
3 已经提交了不合适的修改到版本库时,想要撤销本次提交,使用
git reset --hard commit_id
就可以回到版本号为commit_id的那个版本了(不过前提是没有推送到远程库).
4 如果你不仅提交了不合适的版本,并且还推送到了远程,这种情况可以先按照第3步的操作回退到合适的版本,然后使用本地的版本
强行覆盖远程的分支,使用
git push -f
即可