git 丢弃修改分为3中情况:
一:还未提交得暂存区,也就是没有执行git add时:
直接 git checkout -- './src/views/index.vue'(示例,某个文件)
git checkout -- * (所有修改得文件)
git checkout -- .vue(示例,后缀为.vue的文件)
二:已经提交至暂存区,也就是执行了git add时:
可以 git reset HEAD './src/views/index.vue'(示例,某个文件)
git reset HEAD * (所有修改得文件)
git checkout .vue(示例,后缀为.vue的文件)
注意:执行上述命令之后只是回到了“一”的情况,修改的代码还在工作区,想要彻底丢弃修改,继续情况“一”的操作就可以了
三:已经将代码提交只本地仓库,也就是执行了git commit时:
可以 git reset --hard HEAD^ (回退到上一个版本)
git reset --hard CommitId (回退到指定commitId的版本)
注意:请慎用 --hard 参数,因为这回完全丢弃的之前的修改,请在清楚了解情况下使用--hard,建议先用git reset --soft比较安全(虽然可能麻烦点);另外,通过git log 可以查看每次提交信息包括commitId