Discussion:
Empty Index lines
Alexey Neyman
2017-12-07 23:50:18 UTC
Permalink
Hi,

Is it possible to get rid of the lots of "Index:" headers in the output
of the 'svn diff' where there is no actual difference between the files?
I think this started with SVN 1.9 - 1.7 definitely did not do that, and
neither did 1.8, as far as I remember.

For example, I copied Linux kernel from one path to another and now 'svn
diff' shows the Index: line on each copied path, e.g.

$ svn di arch/x86 | head -20
Index: arch/x86/.gitignore
===================================================================
Index: arch/x86/Kbuild
===================================================================
Index: arch/x86/Kconfig
===================================================================
Index: arch/x86/Kconfig.cpu
===================================================================
Index: arch/x86/Kconfig.debug
===================================================================
Index: arch/x86/Makefile
===================================================================
Index: arch/x86/Makefile.um
===================================================================
Index: arch/x86/Makefile_32.cpu
===================================================================
Index: arch/x86/boot/.gitignore
===================================================================
Index: arch/x86/boot/Makefile
===================================================================
....

As you might imagine, this bloats the patch considerably and effectively
makes it unreviwable.

There is no changes in all these files, except that there is a parent
directory that were copied.

$ svn info .
Path: .
Working Copy Root Path: /home/aneyman/work/WC
URL: $REPO/$PATH/linux-generic
Relative URL: ^/$PATH/linux-generic
Repository Root: $REPO
Repository UUID: 12b7edc4-22db-4a73-a48b-88f3acc8629e
Revision: 14230
Node Kind: directory
Schedule: add
Copied From URL: $REPO/$ORIGINAL_PATH
Copied From Rev: 14230
Moved From: $ORIGINAL_PATH_IN_WC
Last Changed Author: aneyman
Last Changed Rev: 14227
Last Changed Date: 2017-12-05 16:40:55 -0800 (Tue, 05 Dec 2017)

How to make SVN not emit this garbage?

Regards,
Alexey.
Branko Čibej
2017-12-08 00:21:12 UTC
Permalink
Post by Alexey Neyman
Hi,
Is it possible to get rid of the lots of "Index:" headers in the
output of the 'svn diff' where there is no actual difference between
the files? I think this started with SVN 1.9 - 1.7 definitely did not
do that, and neither did 1.8, as far as I remember.
I couldn't agree more, these index lines are a pain. Happens with
current 1.8.x, 1.9.x and trunk.

I've been looking through the diff code and /somehow/ we get the
contents-changed flag wrong. It doesn't matter if we're using the
internal diff code or an external command, the results are the same; and
it also doesn't matter if it's a wc-to-wc diff, a repo-to-wc diff or a
repo-to-repo diff.

The code is of course a tangled maze of twisty passages.

-- Brane

Continue reading on narkive:
Loading...