2017-03-21 65 views
1

將註釋函數添加到現有源文件會產生錯誤對齊的差異。例如,考慮將provideNewThing方法:Git diff參數可以改善源代碼更改對齊嗎?

@Provides 
Foo provideFoo() {...} 

@Provides 
NewThing provideNewThing() {...} 

@Provides 
Bar provideBar() {...} 

在命令行中運行git diff將顯示:

 @Provides 
    Foo provideFoo() {...} 

    @Provides 
+ NewThing provideNewThing() {...} 
+ 
+ @Provides 
    Bar provideBar() {...} 

這是不理想的。 看來我已將@Provides註釋引入provideBar。仔細觀察會發現,否則很容易錯過。

理想的情況下是有git diff <some-options>,輸出:

 @Provides 
    Foo provideFoo() {...} 
+ 
+ @Provides 
+ NewThing provideNewThing() {...} 

    @Provides 
    Bar provideBar() {...} 

這可能嗎?

+0

你試過'git diff --diff-algorithm = patience'嗎? –

+0

是的,由git提供的差異算法在這個例子中表現相同。 –

回答

1

是的,有時差異比對可能難以識別。在這種情況下,這很簡單,但我遇到了需要跟蹤哪些地方添加的情況。我用kdiff3 - Manual diff alignment

要KDiff3添加手動差速器校準:

  • 在一個子窗口中選擇文本
  • 按CTRL + Y
  • 在另一個子窗口中選擇文本
  • 按CTRL + Y

Illustration

注意所附截圖中的差異對齊。

+0

我玩過配置窗口化diff工具以快速查看的想法;它永遠不值得。對於大的評論,這個手動差異對齊功能岩石! –