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

Re: finishing `svn diff': two ways to do it

From: Matt Kraai <kraai_at_alumni.carnegiemellon.edu>
Date: 2001-10-11 23:08:22 CEST

On Thu, Oct 11, 2001 at 03:58:24PM -0500, kfogel@collab.net wrote:
> $ svn st -u foo.c
> _ * 17 ./foo.c
> Head revision: 20
> $ svn diff foo.c
> ... shows diff from .svn/text-base/foo.c to ./foo.c, works now.
> $ svn diff -r 20 foo.c
> ... shows diff from local foo.c to revision 20 of foo.c in repos.
> $ svn diff -r 17 foo.c
> ... same as "svn diff foo.c" :-).
> $ svn diff -r 5 foo.c
> ... shows diff from working ./foo.c to rev 5 of foo.c; even though
> rev 5 is earlier than the base of the working version, we still
> show the diff in this order for consistency. In other words,
> running "svn diff -r REV FILE(S)" always produces a patch that,
> when applied to your working file, results in rev REV of that
> file.

So `svn diff foo.c' and `svn diff -r 17 foo.c' produce a patch
which, when applied to revision 17, would transform it into the
working copy, whereas `svn diff -r 20 foo.c' and
`svn diff -r 5 foo.c' produce patches that would transform the
working copy into revision 20 and revision 5, respectively?

This seems needlessly bizarre. Why not follow CVS, which always
produces a patch which changes into the working copy when zero or
one revision is specified?

Matt

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:44 2006

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