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

Final(?) Relative Externals format

From: Max Bowsher <maxb_at_ukf.net>
Date: 2005-01-24 21:18:07 CET

Below I propose what might just possibly become the final relative externals
syntax. Comment, discuss, and then let's implement! ;-)

For examples, I will use the external which is present in the cvs2svn
repository,
and rewrite it into each of the proposed relative forms.

Existing absolute external:
http://svn.collab.net/repos/svn/trunk/subversion/tests/clients/cmdline/svntest

Relative form 1: Scheme-relative
//svn.collab.net/repos/svn/trunk/subversion/tests/clients/cmdline/svntest

This form is compliant with RFC 2396.

Relative form 2: Host-relative
/repos/svn/trunk/subversion/tests/clients/cmdline/svntest

This form is compliant with RFC 2396.

Relative form 3: Repository-relative
///../svn/trunk/subversion/tests/clients/cmdline/svntest

The concept of a repository within the URL is fairly unique to Subversion,
and hence no suitable syntax is expressed in RFC 2396. This form takes
advantage of the fact that whilst the RFC explicitly specifies the meaning
of a relative URL beginning with zero, one, or two slashes, it is silent on
the matter of three or more slashes.
Therefore I feel this is a good way to accomodate this very useful form of
relativity into an unused (and unlikely to be used) void in the URI
standard.

Relative form 4: Directory-relative
../../svn/trunk/subversion/tests/clients/cmdline/svntest

This form is compliant with RFC 2396.
It is stretching the example somewhat, since it would break on tagging or
branching cvs2svn, since "tags/foo" and "branches/foo" contain a different
number of components to "trunk", but you should get the idea of what the
syntax means, nonetheless.

Max.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Jan 24 21:19:21 2005

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

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