git log按顺序显示分支而不是并行

时间:2013-12-10 12:14:47

标签: git

我从bitbucket克隆了回购。然后我添加了远程heroku分支:

git remote add heroku git@heroku.com:heroku-repo.git

现在我调用git log来显示所有分支:

git log --graph --all --pretty=bla-bla-bla

它向我展示了来自heroku远程的所有提交,然后是来自主分支的所有提交: enter image description here

在图片37b03ff — init上是heroku的第一次提交(5个月前)。

为什么它会在主分支(23小时前)上次提交后显示?

顺便说一句,如果我在Tower应用程序中打开此repo,它会按预期并行显示分支。 enter image description here

2 个答案:

答案 0 :(得分:1)

默认情况下,提交按逆时间顺序显示。

- 日期顺序

在显示所有子项之前不显示父项,但以提交时间戳顺序显示提交。

表格https://www.kernel.org/pub/software/scm/git/docs/git-log.html

答案 1 :(得分:0)

首先,您的远程heroku和origin似乎有2个完全不同的repo,所以他们的历史/日志很简单,但是在第二个截图中的不同列中。

其次,根据第二个截图,heroku / HEAD似乎比origin / HEAD“更新”,所以按时间顺序排序,它会先显示。

第三,我尝试解释你的第一个截图,heroku / HEAD更新,所以它会在origin / HEAD之前显示,也会在不同的中显示。但屏幕截图看起来像是在同一列,也许是:

  1. 所有heroku历史记录结束,因此原始历史记录出现在同一列
  2. 漂亮的格式,请尝试git log --abbrev-commit --pretty=oneline --graph --decorategit log --graph --pretty=format:"%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset" --abbrev-commit