views:

13182

answers:

7

I have a laptop running Ubuntu that I would like to act as a Subversion server. Both for myself to commit to locally, and for others remotely. What are the steps required to get this working? Please include steps to:

  • get and configure Apache, and necessary modules (I know there are other ways to create a SVN server, but I would like it Apache-specific)
  • configure a secure way of accessing the server (ssh/https)
  • configure a set of authorised users (as in, they must authorised to commit, but are free to browse)
  • validate the setup with an initial commit (a "Hello world" of sorts)

These steps can involve any mixture of command line or GUI app instructions. If you can, please note where instructions are specific to a particular distribution or version, and where a users' choice of a particular tool can be used instead (say, nano instead of vi).

A: 

This looks like what you want, perhaps with the exception of secure communication.

Kent Boogaart
A: 

for apache:

sudo apt-get -yq install apache2

for ssh

sudo apt-get -yq install openssh-server

for subversion

sudo apt-get -yq install subversion subversion-tools

If you'd like you can combine these into one command like:

sudo apt-get -yq apache2 openssh-server subversion subversion-tools

I cant help with the rest...

Unkwntech
A: 

This article seems to give a pretty good rundown of the entire process. I would recommend following the instructions, and then posting some more specific questions about any problems you encouter which aren't addressed in the articles I and other people have linked to in these responses.

Kibbee
+19  A: 
Grundlefleck
Instructions worked perfectly on Jaunty as well. Thanks!
Mike
Seemed to work perfectly, but I get a 403 forbidden when trying to access it, and no prompt for a password. Any hints on what could be wrong?
korona
@korona: Accessing it in what way: running SVN commands or browsing to it?
Grundlefleck
In steps 3 and 4 aren't you repeating the line: sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/svnserver ?
Megacan
@Megacan: quite correct, amended.
Grundlefleck
+1  A: 

A very easy way to get a SVN server up is to use the site Assembla.

They provide tons of free services, including SVN hosting.

jjnguy
A: 

If you get 403 forbidden when you hit the webserver it may be because you used a hostname that is not what you specified in your config file (ie localhost or 127.0.0.1). Try hitting https://whateveryousetasyourhostname instead...

PuO2
A: 

I recommend Subversion Edge (a new free SVN server solution). It takes care of all the details, and provides a Web UI for customizations.

BBb