Re: [PATCH] Extend 'svn diff URL URL' to 'svn diff URL URL [WC]'

Philip Martin <[email protected]> Thu, 03 Dec 2009 11:57:51 +0000
Newsgroups gmane.comp.version-control.subversion.devel,gmane.comp.version-control.subversion.rapidsvn.devel
Message-ID <[email protected]>
Gah! Typo.

Philip Martin <[email protected]> writes:

> Julian Foad <[email protected]> writes:
>
>> Philip Martin wrote:
>>> It's possible to compare branches in the repository using
>>> 
>>> $ svn diff ^/repo/branches/foo ^/repo/branches/bar
>>> 
>>> but that only works if the current directory is a working copy because
>>> libsvn_client/cmdline.c:svn_client_args_to_target_array converts
>>> relative URLs to full URLs using the hardcoded path "".  Since I
>>> regularly have my current working directory outside a working copy
>>> this is inconvenient.
>>> 
>>> I'd like to be able to do
>>> 
>>> $ svn diff ^/repo/branches/foo ^/repo/branches/bar path/to/wc
>>> 
>>> and it turns out to be quite simple from a code point of view.  It is,
>>> of course, an extension to our rather complex diff UI.  What do people
>>> think?
>>
>> What does your example command line mean? I assume you mean path/to/wc
>> is used just to identify the repository, and does not additionally
>> specify something like which path within the branches you want diffed.
>
> Yes.
>
>> (Compare the diff syntax 2, where paths within the primary pair of
>> targets can be specified at the end.)
>>
>> -1 to exactly as formulated here. It looks far too much like a
>> (syntax-2) command for specifying sub-paths.
>>
>> We could consider instead something like
>>
>> $ svn diff ^/repo/branches/foo ^/repo/branches/bar --repos=[URL|WC]
>
> But that's much harder to type.  Also the new syntax is consistent
> with most of the other commands that use '.' as a default, if one
> doesn't want to use '.' one specifies the path explicitly:
>
> $ svn log -qr880555
> svn: '.' is not a working copy
> $ svn log -qr880555
  $ svn log -qr880555 ../src
> ------------------------------------------------------------------------
> r880555 | neels | 2009-11-12 16:25:11 +0000 (Thu, 12 Nov 2009)
> ------------------------------------------------------------------------
>
> Why should diff not work the same way?  Currently I get
>
> $ svn diff ^/subversion/tags/1.5.x ^/subversion/tags/1.6.x
> svn: '.' is not a working copy
>
> When I got that error message it seemed obvious to me that I should
> add a working copy path, I was surprised when it didn't work.
>
> -- 
> Philip

-- 
Philip

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2426658

Please start new threads on the <[email protected]> mailing list.
To subscribe to the new list, send an empty e-mail to <[email protected]>.