User Tools

Site Tools


Subversion how-to for NorStore

How it works

NorStore uses the svnserve server solution to take local svn repositories online.

On the NorStore node, a svnmerge demon is running as a background process. The demon serves repositories that are stored in NorStore's project work space in /projects/NS2345K/svn. The svn repositories each receive an URL of form svn://<repository name>


To create and manage a repository, you need a user account at NorStore which is member of the ns2345k project.

The creator of a repository has the full flexibility to grant remote read/write access to external users. Once the repository is create, the use of the repository does not require a NorStore account. The repository creator can define svn users (consisting of a user-name with corresponding password) which in general have no relation to NorStore user accounts.

To start and stop the svn server, your NorStore user must in addition have access to Currently, this group contains following people: Alf Grini, Ingo Bethke, Thierry Toutain and Martin King.

Start/stop server

Log on to via ssh.

To take all svn repositories online, do

svnserve -d -r /projects/NS2345K/svn --log-file /projects/NS2345K/svn/svnserve.log --pid-file /projects/NS2345K/svn/

An svnserve demon has now been started as a background process on The process id is logged in /projects/NS2345K/svn/

To take all repositories offline again, do

kill `cat /projects/NS2345K/svn/`

Creating a new repository

Log on to via ssh.

Change directory to /projects/NS2345K/svn.

Create a new svn repository with

svnadmin create testrepo

where testrepo is to be replaced with the repository name.

The new repository is now set up in /projects/NS2345K/svn/testrepo

Customizing access rights

Edit testrepo/conf/svnserve.conf for general customisation of access rights. Important: Make sure to remove all leading blanks when activating an option.

The default is read/write access for authenticated users and no access for anonymous.

To limited access to read for authenticated users, change

# auth-access = write


auth-access = read  

To grant anonymous read, change

# anon-access = none     


anon-access = read

The users of the repository are defined in testrepo/conf/passwd with user name and password, e.g.

harry = harryssecret
sally = sallyssecret
guestuser = friendly

The user customisation is activated in svnserve.conf by uncommenting

# password-db = passwd


password-db = passwd

Further fine tuning of access rights can be done in testrepo/conf/authz. E.g.,

harry = rw 
guestuser = r

gives harry read/write access but limits the access of guestuser to read-only. The authz customisation is activated in svnserve.conf by uncommenting

# authz-db = authz


authz-db = authz

Remote access

After taking the repository online, the URL of the repository testrepo is svn://

To checkout the repository, do

svn co svn://

Change directory to testrepo cd testrepo

Create a dummy file and mark it for adding

echo test > README 
svn add README 

Commit the repository

svn commit -m "my commit message"       
noresm/svnnorstorehowto.txt · Last modified: 2014-12-19 13:17:22 by