Git日志显示HEAD指向的确切位置?

时间:2015-08-23 02:19:17

标签: git git-log

有没有办法让git log以不同的方式显示以下情况:(a)HEAD指向分支指针和分支指针指向提交,以及(b)HEAD指向直接提交,以及分支指针指向相同的情况提交?

例如,如果我这样做

git commit -m'My commit'
git log --oneline --graph --decorate
* 655c6f1 (HEAD, master) My commit

现在的情况是:655c6f1< - master< - HEAD。但是如果我做的话

git checkout 655c6f1
git log --oneline --graph --decorate
* 655c6f1 (HEAD, master) My commit

现在的情况是:655c6f1< - master,655c6f1< - HEAD。 (而且我处于一个独立的HEAD状态。)

但在这两种情况下,git log输出都是相同的。如何让git log区分这两种情况?

1 个答案:

答案 0 :(得分:4)

Git 2.4 +(2015年4月)确实向您展示了HEAD分支与detached HEAD after checkout之间的明显区别 请参阅commit 51ff0f2

这是HEAD引用分支时所看到的。

C:\Users\vonc\prog\b2d>git log --oneline --graph --decorate -3
* 8956c85 (HEAD -> master, origin/master) apache/(run/kill): runs/kills gnupg2 as well
* 216834a gitolite/run: uses {fgrpath}/.init_envs.sh as a marker

请注意 HEAD -> master 部分。

分离HEAD时:

C:\Users\vonc\prog\b2d>git log --oneline --graph --decorate -3
* 8956c85 (HEAD, origin/master, master) apache/(run/kill): runs/kills gnupg2 as well
* 216834a gitolite/run: uses {fgrpath}/.init_envs.sh as a marker

即使Windows has Git 2.4+ nowPortableGit-2.5.0-64-bit.7z.exe