Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Should I have one SVN user for each programmer on the Ubuntu server?

Is this accomplished by using "htpasswd" 4 times for 4 programmers?

How do I couple all these users to same group so that I could modify file access specific for the SVN group and all its members?

share|improve this question

migrated from Mar 31 '10 at 1:56

This question came from our site for professional and enthusiast programmers.

Are you using Apache 2 with dav_svn? Also, this probably belongs on ServerFault. – David Antaramian Mar 31 '10 at 1:53
You should ask the mods to merge your user accounts. – Dennis Williamson Mar 31 '10 at 4:46
up vote 6 down vote accepted

Yes, you should be giving all committers individual credentials. Each developer should have their own account, so that changes can be traced to a specific person. Over time you'll get an accurate view of who best knows parts of code. As a bonus, when one person leaves the group, you don't have to change the password (lets pretend you would actually do that for the moment).

There's two parts two configuring this; Authentication and Authorization. Authentication is the process of determining identity. You can use htpasswd to do this, but it's better to integrate your existing password systems if possible. mod-auth-external can likely do this for you.

The other part is authorization; determining who is allowed to access what. The easiest way is to use SVN Authz and path based authorization to define a group.

For example, your authz file may look like:

developers = alice, bob, carla, trudy

developers = rw

alice = rw
developers = r
share|improve this answer
Much more thorough answer than mine. I'll upvote tomorrow, I'm at my limit for today. – Josh Mar 31 '10 at 13:34

Yes. Each developer should have their own Apache username. Note they do not need a Unix user on the Ubuntu server. Just a different user created via htpasswd. If they are all in the same htpasswd file, they will be able to access the svn repo.

For more complicated permission management, look into SVN Authz files.

share|improve this answer

You can also use a project such as Subversion Admin to manage all the access files for you. It also allows you to easily setup the post-commit email notifications. As well as connect your server into an ldap or active directory system.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.