2017-08-03 103 views
3

我必須做一個相當大的git rebase,導致許多文件發生衝突。在某些情況下,我不得不重寫部分代碼以使其兼容,而不僅僅是使用上行或下行版本的行/塊。Intellij註釋顯示git rebase後的錯誤日期

到目前爲止沒有問題!一旦我解決了所有衝突,我的git日誌看起來和預期一樣,並且歷史記錄發生了變化

但是,通過使用Intellij中的Annotate,重新進行的提交顯示了進行rebase時的日期。

我現在有相同的歷史,(提交散列是相同的),在多個提交,有兩個不同的日期。我搞砸了一些事情還是這是想要的行爲

+0

這個「錯誤」被定格在2017年2月1日的IntelliJ有人 –

回答

3

我不知道這是否是預期的行爲(即我在網上做了一些研究但找不到任何東西),但是這是發生了什麼事:

簡短的回答

出於某種原因的IntelliJ正顯示出提交日期,而你的情況對應於底墊的日期。

(必要的)git的理論有點

再次基於創造新的提交,這是多麼的git的作品。但git知道舊的和新的提交是相關的,所以它在新的提交中保存了原始日期(作者日期)和基準日期(提交日期)

你可以在git log中使用選項--pretty=fuller

有趣的事實

的IntelliJ是顯示提交的日期和作者。

顯示提交日期可以是一個選擇。但在這種情況下,我會顯示提交者以及提交日期。另一種選擇是顯示作者和作者的日期。

在我看來,那是IJ混合起來的東西,但也許還有一個原因在於

+0

該報告於2012年5月HTTPS「錯誤」: //youtrack.jetbrains.com/issue/IDEA-85484 –