svn doesn't accept @ in URL's (must be encoded as %40)
Vincent Lefevre
vincent at vinc17.org
Wed Oct 15 17:17:00 CDT 2008
On 2008-10-15 12:37:43 -0400, Karl Fogel wrote:
> Vincent Lefevre <vincent+svn at vinc17.org> writes:
> > I don't know if this is a bug or not, but svn doesn't accept the
> > @ character in URL's (at least until 1.5.3); this character must
> > be encoded as "%40". For instance:
> >
> > $ svn co svn+ssh://svn@localhost
> > svn: Try 'svn help' for more info
> > svn: Syntax error parsing revision 'localhost'
> >
> > I think that if what follows @ doesn't correspond to a revision,
> > it should be regarded as part of the URL.
> >
> > Otherwise the Subversion book should be updated to document this
> > point and correct the examples.
>
> I think the idea was to leave us open to having new revision keywords in
> the future. The way to escape the "@" is to put another "@" at the end,
> since only the last "@" is interpreted as a possible revision
> specifier:
>
> $ svn co svn+ssh://svn@localhost@
>
> If the Subversion book is not clear on this point, it needs to be
> patched.
I propose the attached patch.
--
Vincent Lefèvre <vincent at vinc17.org> - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)
-------------- next part --------------
Index: src/en/book/ch06-server-configuration.xml
===================================================================
--- src/en/book/ch06-server-configuration.xml (revision 3332)
+++ src/en/book/ch06-server-configuration.xml (working copy)
@@ -1208,10 +1208,13 @@
URL scheme, the Subversion client will actually be running the
command <userinput>rsh host svnserve -t</userinput> behind the
scenes. If you include a username in the URL (e.g.,
- <literal>svn+rsh://username@host/path</literal>), the client
+ <literal>svn+rsh://username@host/path@</literal>), the client
will also include that in its command (<userinput>rsh
- username at host svnserve -t</userinput>). But you can define new
- tunneling schemes to be much more clever than that:</para>
+ username at host svnserve -t</userinput>). The second
+ <literal>@</literal> is necessary, otherwise
+ <literal>host/path</literal> would be interpreted as a peg
+ revision. But you can define new tunneling schemes to be much
+ more clever than that:</para>
<screen>
[tunnels]
More information about the svnbook-dev
mailing list