java - Git diff 参数可以改善源代码更改对齐吗?

标签 java git git-diff

将带注释的函数添加到现有源文件会产生未对齐的差异。例如,考虑添加 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

Illustration

注意所附屏幕截图中的差异对齐。

关于java - Git diff 参数可以改善源代码更改对齐吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42933774/

相关文章:

Git Diff - 指示行移动

java - ML Kit 条码扫描 : Invalid image data size

java - recyclerview 中的图像在滚动时不可见

git - 如何将一些文件从一个 git repo 移动到另一个(不是克隆),保留历史

vim - 如何使用 vim-fugitive 查看任何提交的 git diff?

Git 提交补丁

java - Gradle多项目测试未调用

java - 扩展 javax.ws.rs.core.Application 的类不能转换为 Servlet

git - 我的 Git bash 忘记了我的别名。我能做些什么?

git add --patch 产生 "Not a git repository"