[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r17190 - trunk/subversion/libsvn_wc

From: Philip Martin <philip_at_codematters.co.uk>
Date: 2005-11-05 01:08:33 CET

Daniel Berlin <dberlin@dberlin.org> writes:

>> Is that the right thing to do? It doesn't have a regression test so
>> I'm not sure what behaviour you are trying to achieve.
>>
>> $ svnadmin create repo
>> $ svn co file://`pwd`/repo wc
>> $ echo xxx > wc/foo
>> $ svn add wc/foo
>> $ svn ci -m "" wc
>> $ svn rm wc/foo
>> $ svn diff -r0 wc
>>
>> Before your change I get
>>
>> $ svn diff -r0 wc
>> ../svn/subversion/libsvn_subr/io.c:2219: (apr_err=2)
>> svn: Can't open file 'wc/foo': No such file or directory
>>
>> that's obviously a bug, with you change I get
>>
>> $ svn diff -r0 wc
>> Index: /tmp/tmp
>> ===================================================================
>> Index: wc/foo
>> ===================================================================
>> --- wc/foo (revision 0)
>> +++ wc/foo (working copy)
>> @@ -1 +0,0 @@
>> -xxx
>>
>> It's that really the correct output?
>
> That's not the output i get, but i've got an external diff configured
> :(

External diff makes no difference as far as I can see.

>
>> There are two diffs: first an
>> empty diff, the /tmp/tmp part, and then a second diff, the wc/foo
>> part, that represents the local change. I suppose it's better than it
>> was, but I'm not sure it's correct.
>
> So what would you expect?
>
> Only the "wc/foo" part?

Well, if I have a local modification:

$ svn diff wc
Index: wc/foo
===================================================================
--- wc/foo (revision 1)
+++ wc/foo (working copy)
@@ -1 +1,2 @@
 xxx
+yyy

and I do a -rN diff against a repository version that has the same
modification I get an empty diff:

$ svn diff -r2 wc
Index: wc/foo
===================================================================

By extension, if I have a local schedule delete:

$ svn diff wc
Index: wc/foo
===================================================================
--- wc/foo (revision 1)
+++ wc/foo (working copy)
@@ -1 +0,0 @@
-xxx

and I do a -rN diff against a repository version that has the file
deleted perhaps I should get an empty diff:

$ svn diff -r0 wc
Index: wc/foo
===================================================================

In all our diffs there is the issue about whether the header should be
suppressed if there is no difference, but given that we currently show
the header I would expect a single empty diff with the correct header.

-- 
Philip Martin
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Nov 5 01:10:09 2005

This is an archived mail posted to the Subversion Dev mailing list.