看看git的所有历史

时间:2011-01-22 14:00:27

标签: git

比方说,我目前的git日志是

commit3

commit2

commit1

我将头重置为commit2。

现在我想回到commit3,但是我忘记 commit3的sha-1,所以我想查看日志,但“git log”只会显示commit2,commit1,我的问题是如何重置为commit3或让日志显示现在也是commit3?

由于

3 个答案:

答案 0 :(得分:10)

使用git reflog查找旧参考并直接将其传递给git log。请注意,定期清除reflog,并且最终将删除旧提交,除非它们是分支的一部分 - 如果要撤消提交但将其保留在历史记录中,请使用git revert撤消它们而不将其从历史。

答案 1 :(得分:5)

命令

git reflog

将显示已成为HEAD的SHA列表。换句话说,它按照已检出的顺序显示提交列表。在该列表中,您还会看到语法HEAD@{1}HEAD@{2}等。这是解决之前HEAD的方法。

我的情况git checkout HEAD@{1}应该检查commit3,因为它是当前HEAD之前的HEAD。

答案 2 :(得分:0)

有两种方法: -

Classic:git reflog

大图:) git log --graph --decorate --oneline