回退未暂存版本代码
说明
- 回退未使用
git add命令添加的代码 - 本地修改消失
- 新文件不会丢失
命令
git checkout -- 文件名,回退指定文件git checkout .,回退所有未暂存的文件
回退暂存代码
说明
- 已经使用
git add命令添加的文件 - 就是撤销
git add命令,修改的内容不会丢失
命令
git reset HEAD 文件名,撤销暂存指定文件git reset HEAD .,撤销所有暂存文件
回退已经提交的代码
说明
- 就是版本回滚
- 回退后可以使用
git reflog来再次回退到未来的版本,只要没有清除缓存并且保存有提交的id
命令
git reset --hard HEAD^,回退到上个版本(可以扩展为^回退步数,~回退步数,这里^是分支,是本分支提交(^和的概念我没有弄清楚))git reset --hard 提交id,回退到指定版本