-----Original Message-----
From: Nico Kadel-Garcia [mailto:nka...@gmail.com] 
Sent: Saturday, 10 July 2010 8:13
To: Ryan Schmidt
Cc: Subversion
Subject: Re: Unclear syntax for relative addressing of svn:externals, on RHEL 
5, subversion-1.6.12

On Fri, Jul 9, 2010 at 4:19 PM, Ryan Schmidt
<subversion-20...@ryandesign.com> 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?
---------------------------------------------------------
I think it is available, I'm not sure what you mean by "so that moving a tag or 
branch up or down wouldn't break the references".  I think if you move 
directories around it is likely to break references, especially if relative to 
the root of the repository.  The only way to prevent failing references is to 
use a peg revision on the URL.

The original externals syntax was 'directory externalURL' and would accept only 
full/absolute URLs.  In Subversion 1.5 (I think) relative externals were 
introduced.  To support these new relative externals, whilst also maintaining 
backwards compatibility, a different syntax was introduced, 'externalURL 
directory'.

If you want relative URLs you must use the new syntax.  If you use absolute 
urls can use either the old or the new syntax.

If the new syntax is failing maybe you could post the error message.  I have 
used externals since I moved to Subversion, the old absolute and the new 
syntax, without problem.


#####################################################################################
Attention:
The information contained in this message and or attachments is intended
only for the person or entity to which it is addressed and may contain
confidential and/or privileged material. Any review, retransmission,
dissemination or other use of, or taking of any action in reliance upon,
this information by persons or entities other than the intended recipient
is prohibited. If you received this in error, please contact the sender and
delete the material from any system and destroy any copies.
#####################################################################################

Reply via email to