Home | 简体中文 | 繁体中文 | 杂文 | Github | 知乎专栏 | 51CTO学院 | CSDN程序员研修院 | OSChina 博客 | 腾讯云社区 | 阿里云栖社区 | Facebook | Linkedin | Youtube | 打赏(Donations) | About
知乎专栏多维度架构

126.4. reflog

reflog 类似我们软件中的 Undo/Redo ,就像使用 CMD+Z / CMD + SHIFT +Z 一样进行版本的切换和回滚。reflog 日志是保存在本地的,并不会 push 到远程,这就是他与 git log 的区别。

git reflog 与 git log的区别,git log 可以显示所有提交过的版本信息,但不包括已经被删除的 commit 记录和 reset 的操作

git reflog 可以是显示所有的操作记录,包括提交,回退的操作。一般用来找出操作记录中的版本号,进行回退,常用于恢复本地的错误操作。

git reflog 用法

		
Neo-iMac:test.netkiller.cn neo$ git reflog
120f1bb (HEAD -> main) HEAD@{0}: reset: moving to 120f1bb
9fcccf0 HEAD@{1}: commit: add tmp string
de5ca5d (origin/main, origin/HEAD) HEAD@{2}: reset: moving to HEAD
de5ca5d (origin/main, origin/HEAD) HEAD@{3}: pull: Fast-forward
120f1bb (HEAD -> main) HEAD@{4}: clone: from 192.168.30.5:netkiller.cn/test.netkiller.cn.git
		
	

回滚到 120f1bb

		
Neo-iMac:test.netkiller.cn neo$ git reset --hard 120f1bb
HEAD is now at 120f1bb Initial commit