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

Re: Unclear syntax for relative addressing of svn:externals, on RHEL 5, subversion-1.6.12

From: Ryan Schmidt <subversion-2010b_at_ryandesign.com>
Date: Fri, 9 Jul 2010 17:45:52 -0500

On Jul 9, 2010, at 17:13, Nico Kadel-Garcia wrote:
> On Fri, Jul 9, 2010 at 4:19 PM, Ryan Schmidt wrote:
>> On Jul 9, 2010, at 14:08, Nico Kadel-Garcia wrote:
>>
>>> The allowable syntax for svn:externals is a bit unclear in the Redbook.
>>>
>>> Shouldn't I be able to set the svn:external to point to a location in
>>> my active repository, such as the below settings?
>>>
>>> svn propset svn:externals "release-1 ^/tags/release-1" .
>>>
>>> I seem to be able to set such values, but updating with such values
>>> fails miserably with the subversino-1.6.12, published from RPMforge on
>>> RHEL 5 (for reference to the version I'm using).
>>
>> Try
>>
>> svn propset svn:externals "^/tags/release-1 release-1" .
>
> On Subversion 1.6? I think not, and tested such. The syntax described
> at http://svnbook.red-bean.com/en/1.5/svn.advanced.externals.html
> describes the precise reverse syntax, and it accepts this.
>
> svn propset svn:externals "release-1
> svn://svnserver/repo/tags/release-1".
>
> What I wanted to do was have Subversion check out directories from
> within the same repository, rooted to the top of the repository, so
> that moving a tag or branch up or down wouldn't break the references.
> I'd thought from the documentation about 'relative references' that it
> would apply to the URL of the external repository, so that if the repo
> is checked out as file:///, https:///, svn:///, etc. the URL's for
> svn:externals downloading would be auto-munged appropriately.
>
> Is this not available?

Yes, it is possible, using the syntax I provided.

On the book page you referred to, scroll down to the part that reads "As of Subversion 1.5, though, a new format of the svn:externals property is supported." The old externals syntax, which does not support what you want, had the format "localdir url". The new format, that does support what you want, has the format "url localdir" (the parameters are reversed from before). I know this works because I use it in my repository here:

http://code.google.com/p/canviz/source/checkout

You can check out a working copy and see it work for yourself, or see:

$ svn propget svn:externals http://canviz.googlecode.com/svn/canviz/trunk
^/vendor/excanvas/0001_at_7 excanvas
^/path/trunk/libs_at_262 path
^/vendor/prototype/1.6.0.3/dist_at_135 prototype
Received on 2010-07-10 00:47:05 CEST

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.