Subversion Repository URLs
As illustrated throughout this book, Subversion uses URLs to
identify versioned resources in Subversion repositories. For
the most part, these URLs use the standard syntax, allowing for
server names and port numbers to be specified as part of the
URL:
$ svn checkout https://svn.example.com:9834/repos
…
But there are some nuances in Subversion's handling of URLs
that are notable. For example, URLs containing the
file:
access method (used for local
repositories) must, in accordance with convention, have either a
server name of localhost
or no server name at
all:
$ svn checkout file:///path/to/repos
…
$ svn checkout file://localhost/path/to/repos
…
Also, users of the file:
scheme on
Windows platforms will need to use an unofficially
“standard” syntax for accessing repositories
that are on the same machine, but on a different drive than
the client's current working drive. Either of the two
following URL path syntaxes will work where
X
is the drive on which the repository
resides:
C:\> svn checkout file:///X:/path/to/repos
…
C:\> svn checkout "file:///X|/path/to/repos"
…
In the second syntax, you need to quote the URL so that the
vertical bar character is not interpreted as a pipe. Also, note
that a URL uses ordinary slashes even though the native
(non-URL) form of a path on Windows uses backslashes.
Finally, it should be noted that the Subversion client will
automatically encode URLs as necessary, just like a web browser
does. For example, if a URL contains a space or upper-ASCII
character:
$ svn checkout "https://host/path with space/project/españa"
…then Subversion will escape the unsafe characters
and behave as if you had typed:
$ svn checkout https://host/path%20with%20space/project/espa%C3%B1a
If the URL contains spaces, be sure to place it within quote
marks, so that your shell treats the whole thing as a single
argument to the
svn
program.