Git 时光穿梭机

git log 提交日志
git reflog 命令日志
git status 查看状态

管理修改

git diff 工作区与暂存区
git diff master 工作区与版本库
git diff --cached 暂存区与版本库

删除文件

1.如果你用的rm删除文件,那就相当于只删除了工作区的文件,如果想要恢复,直接用git checkout -- <file>就可以
2.如果你用的是git rm删除文件,那就相当于不仅删除了文件,而且还添加到了暂存区,需要先git reset HEAD <file>,然后再git checkout -- <file>
3.如果你想彻底把版本库的删除掉,先git rm,再git commit 就ok了


## 撤销修改 删除 ` git checkout -- ` 工作区到原状态 ` git reset HEAD ` 暂存区到工作区 已经提交到版本库时,想要撤销本次提交,参考版本回退,不过前提是没有推送到远程库。

版本回退

git reset --hard HEAD^ 回到上个版本
git reset --hard HEAD^^ 回到上上个版本
当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

git reset --hard <commit_id> 指定回退回退的版本
git checkout <commit_id> <file> 指定文件版本回退

使用命令 git log 回到过去... 可以查看提交历史,以便确定要回退到哪个版本。
使用命令git reflog 重返未来... 查看命令历史,以便确定要回到未来的哪个版本。

原文地址:https://www.cnblogs.com/xiaobaiv/p/9350522.html