防止 svn 输出不必要的差异行

Prevent svn from outputtting unnecessary diff lines

对于一个特定的源文件,我使用 TortoiseMerge 生成了一个参考补丁文件。补丁文件仅显示实际发生更改的行。例如:

@@ -87 +87 @@
-                Particles(I)%Mass
+                MassArray(I)
@@ -91 +91 @@
-                  Particles(I)%Mass
+                  MassArray(I)

然而,当我使用命令行 diff 选项时,这就是我得到的

svn diff --old FileName.FOR@6382 --new FileName.FOR@6383

@@ -84,11 +84,11 @@
               end if
               TotalParticleMass = &
                 TotalParticleMass + &
-                Particles(I)%Mass
+                MassArray(I)
               if (IsVirtualParticle(I)) then
                 TotalVirtualParticleMass =  &
                   TotalVirtualParticleMass + &
-                  Particles(I)%Mass
+                  MassArray(I)
               end if
             end do
             write(TVMunit, '(I12, G12.4, G12.4, I12, I12, I12)')  &

如您所见,命令行生成的文件也包含相同的行。对于我目前的目的,我真的不需要这些信息。

如何使用命令行获取修改后的行?我需要和补丁文件一样的东西。

谢谢

您应该使用外部 diff-U0 选项(统一上下文的行数):

svn diff --diff-cmd /usr/bin/diff -x'-U0' ...