使用此命令:
git log --all -n30 --graph --abbrev-commit --decorate \
--date=relative --format=format:'%h - (%ar) %s - %an%d'
Run Code Online (Sandbox Code Playgroud)
我将得到一棵美妙的树,这正是我正在寻找的,除了HEAD并不总是在顶部.
如果我删除该--all选项,我也将丢失所有显示的分支.
如何将HEAD保持在顶部并仍然可以看到最后30个元素可见的完整树?
换句话说,我得到的是
* d4b7d5a - (foo)
* * 44f53e2 - (HEAD)
|/
* 4587f32 - (bar)
Run Code Online (Sandbox Code Playgroud)
而我想得到的是:
* 44f53e2 - (HEAD) <- HEAD on the top
| * d4b7d5a - (foo)
|/
* 4587f32 - (bar)
Run Code Online (Sandbox Code Playgroud)
不幸的是,我不相信这是可能的,因为 d4b7d5a(foo) 提交是在你的 HEAD 之后进行的。您可以颠倒日志的顺序,但这不是重点。我知道让 HEAD 始终位于顶部的唯一方法是使用“--before”选项来仅显示 HEAD 之前所做的提交。
您可以在此处找到有关 --before 和其他过滤器的更多信息: https: //www.atlassian.com/git/tutorials/git-log
无论如何,您可以在这里找到类似的问题: Git log --graph; 前往顶部
但那里也没有解决办法。