-
命令:git log
查看日志,即本地库历史版本
多屏显示:空格向下,b向上翻页,q退出 -
$ git log --pretty=oneline
-
$ git log --oneline
-
$ git reflog
-
命令:rm + 文件名
删除工作区的文件,之后可以把删除操作提交到本地库。删除的文件可以从历史版本中找回。只要曾经提交到了本地库,就可以从历史版本中恢复。没提交过的那就别想了。 -
命令:git diff + 文件名
将工作区与暂存区比较 -
命令:git diff HEAD + 文件名
将工作区与本地库进行比较,也可以指定历史版本进行比较 -
命令:git diff
不加文件名,是将工作区中所有的文件进行比较
版本选择
下面三个指令确定查看版本日志以及哈希索引值
- 命令:git log --pretty=oneline
显示简洁日志,只包括哈希值和 commit 注释 - 命令:git log --oneline
显示哈希值缩写和 commit 注释
只显示当前版本的历史版本,不显示后面的版本 - 命令:git reflog
显示移动到某个版本所需要的步数
显示所有版本信息 - 命令 git reset --hard 哈希索引值
这是最长用的版本更换操作,可以根据索引值选择要去的版本 - 命令 git reset --hard HEAD
指向当前指针指向的位置 - git reset --hard^ 只能回退版本
回退一个版本,需要回退多少版本则写多少个 ^
当版本数太多时,可以使用 --hard~n 来回退 n 个版本
reset
- reset 命令的三个参数对比
1、--soft 参数
移动本地库指针,不会改变工作区和暂存区
2、--mixed 参数
在本地库移动指针
重置暂存区,不改变工作区
3、--hard 参数
在本地库移动指针
重置工作区和暂存区
最后把当前状态恢复成现在指针指向的位置