将带注释的函数添加到现有源文件会产生未对齐的差异。例如,考虑添加 provideNewThing
方法:
@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() {...}
这可能吗?
最佳答案
是的,有时差异对齐可能很难识别。在这种情况下很简单,但我遇到过需要跟踪添加内容的情况。我使用 kdiff3 - Manual diff alignment .
在 KDiff3 中添加手动差异对齐:
- 在一个子窗口中选择文本
- 按 Ctrl+Y
- 在另一个子窗口中选择文本
- 按 Ctrl+Y
注意所附屏幕截图中的差异对齐。
关于java - Git diff 参数可以改善源代码更改对齐吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42933774/