Monday, March 16, 2009

Installing Subversion 1.5.3 on windows

Steps are:

svnadmin create "C:\svnrepo"

  • Edit C:\svnrepo\conf\svnserve.conf and uncomment the following lines:

anon-access = read
auth-access = write
password-db = passwd

  • Edit C:\svnrepo\conf\passwd file:add users in the format username = password one per line and remove the default users.
  • Set environment variable SVN_EDITOR to your favorite text editor (say Textpad.exe).
  • Set Subversion as a service with the following command at cmd prompt:
    • sc create Subversion binpath= "c:\svn\bin\svnserve.exe --service --root c:\svnrepo --listen-port 9999" displayname= "Subversion Repo" depend= Tcpip start= auto
    • Go to service control manager to start the Subversion service or type the following on :
      net start “Subversion Repo”

  • Import an existing project in subversion repo:

svn import C:\myproject svn://localhost:9999/myproject

  • After importing data, note that the original tree is not under version control. To start working, you still need to svn checkout a fresh working copy of the tree.

svn checkout svn://localhost:9999/myproject

  • Install 32 or 64 bit version of tortoise SVN from After installing you will need to reboot your system. Tortoise SVN is a windows shell extension which makes the use of SVN from windows explorer very easy and intuitive.

There's a standard convention in Subversion to start with the "TTB folders" at the root of any project:

Because Subversion uses regular directory copies for branching and tagging (see Chapter 4, Branching and Merging), the Subversion community recommends that you choose a repository location for each project root -- the "top-most" directory which contains data related to that project -- and then create three subdirectories beneath that root: trunk, meaning the directory under which the main project development occurs; branches, which is a directory in which to create various named branches of the main development line; tags, which is a collection of tree snapshots that are created, and perhaps destroyed, but never changed.

So make it a practice to add the trunk, tags and branches directories to your project and all your project files will go under trunk then.

No comments: