I've inherited an debian svn server, and I guess have now been assigned the task of svn administration. The problem is that I now need to add a new user, I googled to no avail.
Can anyone point me in the right direction?
It depends on your config.. Have a look at the file at
[subversion_repos]/[repo]/svnserve.conf
(on my server the repositories are at /var/local/subversion)
svnserve.conf specifies how SVN should authenticate users.
For example, if it uses the password-db
directive, your users will be inside the file it points to.
password-db = passwd
. However, inside the passwd file are just the example users harry
and sally
. None of the real users are listed.
A subversion repository can be served in several ways; if you are using the bundled svnserve daemon, then Joril's answer is correct.
If you are using the apache module mod_dav_svn, then you need to look in your Apache configuration and determine what does Apache use as its user authentication base.
I don't have a Debian server to check here, but my Ubuntu uses /etc/apache2
as the standard apache configuration path.
If your SVN is being served through apache you can use these steps to quickly find out the right files to modify/update.
cd /etc/apache2
grep -r AuthUserFile *
This should get you the filename of the htpasswd file apache is using to authenticate access to the SVN server.
Then you can add a new user like this:
htpasswd filename newuser
If the grep line comes back with several matches you will have to inspect the apache configuration manually to determine the right one for your repository. Search for the AuthzSVNAccessFile too - you may have to give this new user explicit permission to access the right paths, depending on your configuration. This one is a "ini" format file, easy to modify, but post it if you do have it and you have doubts regarding the syntax.
If your users are connecting through a windows client like TortoiseSVN, then they are likely using ssh to connect.
You will need need to create a user with ssh access on the server. There was likely a group created with access to the svn repository directory. Grant the user membership to the group or create one. The user needs read and write access to the repository in order to check in and out files.