2013-12-10 54 views
1

我克隆了bitbucket的repo。然後,我添加了遠程Heroku的分支:git log按連續順序顯示分支而不是並行

git remote add heroku [email protected]:heroku-repo.git 

那麼現在我打電話git log來顯示所有的分支:

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

這顯示了我所有的Heroku的遠程提交,然後將所有來自主承諾分支在一行中: enter image description here

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

爲什麼它顯示在主分支上的最後一次提交(23小時前)之後?

順便說一句,如果我在Tower應用程序中打開此回購,它會按預期方式並行顯示分支。 enter image description here

回答

1

默認情況下,提交按逆時間順序顯示。

--date階

顯示沒有父母所有的孩子都顯示之前,但在其他方面展現在提交時間戳順序提交。

形式https://www.kernel.org/pub/software/scm/git/docs/git-log.html

+0

' - -date-order'使'git log'輸出與第二個屏幕截圖中的相同。似乎它解決了這個問題。但我不明白爲什麼'git log'沒有按時間順序默認顯示所有分支的所有提交? – oluckyman

0

首先,遠程的Heroku和起源似乎2完全不同的回購協議,所以他們的歷史/日誌是簡單的添加,但是像你的第二截屏不同的列。

第二,根據第二張截圖,heroku/HEAD看起來比起源/ HEAD'更新',所以按照時間不錯的順序,它會首先顯示。第三,我嘗試解釋你的第一個截圖,heroku/HEAD是較新的,所以它會在原點/ 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