撤销文件修改
git checkout -- <file>
:版本内撤销文件修改- 分3种情况讨论
- 文件目前仅在工作区,不在暂存区,该命令将使文件退回目前
HEAD
指针指向的版本对应的文件状态 - 文件已通过
git add <file>
添加到暂存区,该命令将使文件退回其刚刚添加到暂存区后的状态 - 若文件已通过
git commit -m <message>
提交为一个版本,则必须通过git reset --hard <commit id>
[[Git学习笔记#版本回退|回退]]到指定版本
- 文件目前仅在工作区,不在暂存区,该命令将使文件退回目前
git reset HEAD <file>
:将已存在于暂存区的文件回退到工作区,配合git checkout -- <file>
可用来将已经提交到暂存区后的文件回退到目前HEAD
指针指向的版本对应的文件初始状态- 未提交文件的回退操作及版本进退操作总结如下
文件删除与误删恢复
文件删除
- 删除工作区的文件:直接在文件系统中删除即可 (可使用
rm <file>
命令) - 删除当前版本库中的文件
- 在文件系统中删除文件
- 使用
git