Just thinking.,. I don’t think svn diff --summarize supports --git either.
I’m guessing that svn switch --relocate has the same argument handling problem. (--accept?) But I don’t think separating the command on diff is as good as it was when we introduced svn relocate. Bert Sent from Windows Mail From: Bert Huijben Sent: Saturday, February 14, 2015 4:57 PM To: 'Subversion Development', Julian Foad The api for diff summarize doesn’t support those flags. They are only used by the output generation of the normal diff code. …. In about the same way as --summarize also changes the output. (But we avoid text transfers on that diff mode) So ‘svn’ could apply some filtering itself, but the --summarize api can’t really do something useful. (It can’t really be optimized to support those flags, the way we create diffs) Bert Sent from Windows Mail From: Julian Foad Sent: Saturday, February 14, 2015 1:41 PM To: 'Subversion Development' Try this in a subversion source WC, using current trunk: $ svn diff --summarize -r1630000:1640000 subversion/tests/libsvn_fs_fs MM subversion/tests/libsvn_fs_fs/fs-fs-fuzzy-test.c A subversion/tests/libsvn_fs_fs/fs-fs-private-test.c M subversion/tests/libsvn_fs_fs/fs-fs-pack-test.c M subversion/tests/libsvn_fs_fs $ svn diff --summarize -r1630000:1640000 subversion/tests/libsvn_fs_fs --properties-only MM subversion/tests/libsvn_fs_fs/fs-fs-fuzzy-test.c A subversion/tests/libsvn_fs_fs/fs-fs-private-test.c M subversion/tests/libsvn_fs_fs/fs-fs-pack-test.c M subversion/tests/libsvn_fs_fs $ svn diff --summarize -r1630000:1640000 subversion/tests/libsvn_fs_fs --ignore-properties MM subversion/tests/libsvn_fs_fs/fs-fs-fuzzy-test.c A subversion/tests/libsvn_fs_fs/fs-fs-private-test.c M subversion/tests/libsvn_fs_fs/fs-fs-pack-test.c M subversion/tests/libsvn_fs_fs The --properties-only and --ignore-properties options have no effect. I call this a bug. (I see the same with 1.8.10 and current trunk.) Desired behaviour: Either: Show the result of stripping out all (prop | non-prop) changes. or Show full information for each path that has any (prop | non-prop) changes. Details: An add or delete or replace is not considered to include a property change, for these purposes, no matter what properties the item had. So, the expected output from the example above would be: $ svn diff --summarize -r1630000:1640000 subversion/tests/libsvn_fs_fs --properties-only MM subversion/tests/libsvn_fs_fs/fs-fs-fuzzy-test.c M subversion/tests/libsvn_fs_fs $ svn diff --summarize -r1630000:1640000 subversion/tests/libsvn_fs_fs --ignore-properties MM subversion/tests/libsvn_fs_fs/fs-fs-fuzzy-test.c A subversion/tests/libsvn_fs_fs/fs-fs-private-test.c M subversion/tests/libsvn_fs_fs/fs-fs-pack-test.c OR $ svn diff --summarize -r1630000:1640000 subversion/tests/libsvn_fs_fs --properties-only M subversion/tests/libsvn_fs_fs/fs-fs-fuzzy-test.c M subversion/tests/libsvn_fs_fs $ svn diff --summarize -r1630000:1640000 subversion/tests/libsvn_fs_fs --ignore-properties M subversion/tests/libsvn_fs_fs/fs-fs-fuzzy-test.c A subversion/tests/libsvn_fs_fs/fs-fs-private-test.c M subversion/tests/libsvn_fs_fs/fs-fs-pack-test.c Makes sense? I haven't yet looked at which of those behaviours fits better with non-summarizing diff, or with anything else, which I'd want to do before deciding which to go for. - Julian