On Mon, 2009-10-19, Stefan Sperling wrote:
> On Sun, Oct 18, 2009 at 11:49:52PM +0200, Stefan Sperling wrote:
> > And how we can have fun controlling diff output from the command line:
>
> This behaviour is encoded in libsvn_wc/diff.c:close_file().
>
> > $ svn diff -r1:BASE
> > Index: foo
> > ===================================================================
> > --- foo (revision 0)
>
> We have hard-coded r0 for added files in libsvn_wc/diff.c:{file_diff,
> report_wc_file_as_added,close_file}.
> Since foo did not exist in r1, it is considered added.
[...]
> The "working copy" labels are caused by wc-ng correctly reporting
> SVN_INVALID_REVNUM for the deleted node foo (it's deleted locally
> in the WC).
>
> > $ svn diff -rBASE:1
> > Index: foo
> > ===================================================================
> > --- foo (working copy)
> > +++ foo (revision 1)
> > @@ -1,2 +0,0 @@
> > -xxx
> > -yyy
> > $ svn diff -rBASE:2
> > Index: foo
> > ===================================================================
> > --- foo (working copy)
> > +++ foo (revision 2)
> > @@ -1,2 +1 @@
> > xxx
> > -yyy
> >
>
> > No idea so far why my change caused this, though.
> > In any case, it might not even be a bug, and even if it is,
> > it's likely not a bug in WC-NG.
>
> So turns out it's alright, at least in this test.
> I'll check the other tests similarly, and if I don't see any problems,
> I'll adjust the expected test output.
How about we start writing a spec for the command-line output formats
that we want, such as the attached (with a bit of semantics and
syntactical detail still to be filled in).
- Julian
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2409468
Received on 2009-10-20 19:25:04 CEST