在顶部显示带有HEAD的git log --graph --decorate

7
使用这个命令:
git log --all -n30 --graph --abbrev-commit --decorate \
   --date=relative --format=format:'%h - (%ar) %s - %an%d'

我将得到一棵美妙的树,它正是我想要的,但是头并不总在顶部。

如果我去掉 --all 选项,那么我也将失去所有显示的分支。

我该如何保持顶部的HEAD,并仍然看到最后30个元素的完整树?

换句话说,我得到的是:

   * d4b7d5a - (foo)
   * * 44f53e2 - (HEAD)
   |/
   * 4587f32 - (bar)

我想要的是:

   * 44f53e2 - (HEAD)  <- HEAD on the top
   | * d4b7d5a - (foo)
   |/
   * 4587f32 - (bar)

添加 HEAD 会起作用吗?git log --all -n30 ... HEAD - VonC
1
似乎不行。git log --graph --oneline HEAD foogit log --graph --oneline foo HEAD 显示的完全一样 :-(。 - Matthieu Moy
--all 列出了所有的分支,如果你将其删除,那么你就会失去它们。 - CodeWizard
1个回答

1
很不幸,我认为这是不可能的,因为d4b7d5a(foo)提交是在您的HEAD之后进行的。您可以颠倒日志顺序,但这并不是重点。我知道让HEAD始终保持在顶部的唯一方法是使用像“--before”这样的选项,只显示在HEAD之前进行的提交。
您可以在此处找到有关--before和其他过滤器的更多信息: https://www.atlassian.com/git/tutorials/git-log 无论如何,您可以在此处找到类似的问题: Git log --graph; HEAD to top 但那里也没有解决方案。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接