Simplest (and fastest) server, which you can use for work with local repository, embedded into every svn-client. This is server for accessing any repository and any amount of repositories, existing on local filesystem, using protocol file:///. It doesn't provide any authorization or authentication methods, grant only full unlimited access to repository under control, but, from other side, it allows to use and gives all features of VCS-system per se.
In order to use this server, you have in any empty directory in any location call CLI-command svnadmin with the corresponding subcommand and parameters (I can't recall, are there administrative programs in the CLI-client bundle or not and can't check it - I haven't installed CLI svn-client, only TortoiseSVN, which have these programs in installer in version 1.7) - I hope, you'll be able to find it.
svnadmin help
show us all available subcommands, we are now interested in subcommand create
.
svnadmin help create
provide all needed for us details
create: usage: svnadmin create REPOS_PATH
Create a new, empty repository at REPOS_PATH.
Valid options:
...
At starting point for first repo we can ignore all fine-tune options and remember only main form svnadmin create REPOS_PATH
, there REPOS_PATH is absolute or relative path to empty directory, planned for repo. Because most time ordinary Windows-people for cross-platform application may people may be confused, which notation (forward- or backslashes) to use in path (metoo), the safest way is cd
to location, from which our dir is visible without long path - parent of future repo-directory or the directory itself.
For planned for repo z:\Main
before svnadmin create
Z:
cd \Main
and, at last,
svnadmin create .
As result we get created empty repository in directory, which shown in Windows Explorer with special icon as content-indicator
Now, every time when this repository is needed, we use usual SVN-commands, there URL-part or parameters seems as file:///Z:/Main
c:\>svn ls file:///Z:/Main
branches/
tags/
trunk/
(I added standard repository tree in repo).
Let's dissect this strange URL:
file:///
, as for any URL, means access-protocol, in our case protocol is special, and have three, not two slashes
Z:/Main
is full path to repo with drive and path inside drive, there all Windows-backslashes replaced by "classic" forward-slashes
From any other point this repository haven't any differences from "Big Brothers" with special Subversion-servers