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/0...@7 excanvas
^/path/trunk/l...@262 path
^/vendor/prototype/1.6.0.3/d...@135 prototype


Reply via email to