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

Re: 4 bugs in svn diff (IssueZilla gives me Internal Server Error)

From: Garrett Rooney <rooneg_at_electricjellyfish.net>
Date: 2002-04-28 19:14:12 CEST

On Sat, Apr 27, 2002 at 11:41:40PM -0500, Ben Collins-Sussman wrote:
> Eric Gillespie <epg@pretzelnet.org> writes:
>
> > #################################################################
> > svn diff URL WCPATH where both are dictories doesn't work
>
> > #################################################################
> > svn diff URL WCPATH where both are files gives bogus output
> >
>
> Eric, you misunderstand how 'svn diff' works. Sorry if 'svn help
> diff' didn't make things clear, it's hard to communicate the complex
> syntax of this subcommand.
>
> 1. svn diff [-r N[:M]] [PATH1 [PATH2 [PATH3 ...]]]
> 2. svn diff URL1[@N] URL2[@M]
>
> You're looking at usage syntax #1, and thinking that the PATHs are
> diffed against each other; that's not what's going on. Rather, they
> are a *list* of targets to be diffed, each in turn. Each target
> causes an *independent* diff-action to execute: the target is compared
> against something. That "something" depends on how you use the -r
> flag. From the help description:
>
> 1. each PATH can be either a working-copy path or URL.
> If no PATHs are specified, a value of '.' is assumed.
>
> + if PATH is a URL, then revs N and M must be given via -r.
>
> + if PATH is a working-copy path, then -r switch means:
> -r N:M : server compares PATH@N and PATH@M,
> -r N : client compares PATH@N against working copy
> (no -r) : client compares base and working copies of PATH
>
> To beat the horse to death: we loop over each PATH, one at a time. If
> the PATH is a URL, you better have given two revisions to compare. If
> a PATH is a wc-path, then the use of the -r flag will either compare
> your working copy to some URL, compare two different versions of your
> working copy on the server, or compare your working-copy against your
> text base.

this seems reasonable to me, but if it is the case, we should probably
find some way to avoid the behavior that eric was seeing. personally,
getting an output from diff that diffs the html mod_dav_svn spitts out
with nothing was not what i expected to see.

right now, one can do:

svn diff http://svn.collab.net/repos/trunk/packages/freebsd/subversion@1700 packages/freebsd/subversion

and it will gladly try to do it, and it outputs a diff that makes (to
me anyway) very little sense.

-garrett

-- 
garrett rooney                    Remember, any design flaw you're 
rooneg@electricjellyfish.net      sufficiently snide about becomes  
http://electricjellyfish.net/     a feature.       -- Dan Sugalski
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sun Apr 28 19:15:01 2002

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