Skynet has an SVN server now :). Let me summarize it’s usage.
Repositories found at:
/var/svn/openrepos
/var/svn/closedrepos
The difference is that any repository created inside of openrepos will be world readable (only registered users editable). Closedrepos need login even for reading.
To add your username and password to the user list, use the following command:
sudo htpasswd -m /etc/apache2/subversion.auth <username>
NOTE: you don’t need sudo access to run the above command if your are in the repomng group. This also applies to the steps listed below—sudo access is only required if you are not a member of the repomng group. You can check what groups you are a member of using the groups command. FIXME: I just noticed that step 3 below can’t be done if you aren’t sudo. I’m looking for a way around this but for now you’ll need to ask someone with sudo to do it for you.
To create repositories, it’s a not-so-difficult process.
1. cd /var/svn/closedrepos or /var/svn/openrepos
2. sudo svnadmin create <repositoryname>
3. sudo chown -R www-data <repositoryname> <– this gives apache server ownership
4. cd /tmp
5. svn co https://skynet.cse.ucsc.edu/closedrepos/<repositoryname>
6. cd <repositoryname>
7. svn mkdir tags branches trunk
8. svn ci -m “initial structure”
To ignore certain directories and files, check this link out: http://www.petefreitag.com/item/662.cfm
And you’re done! Steps 5–8 aren’t strictly necessary. They are there to set up the standard trunk tags branches directories that you can opt out of if you like. Trunk holds a copy of code currently being worked on, tags holds stable revisions of code, and branches are used if you want to experiment with your code in a new direction. Enjoy!
Also, there is a web-based SVN browser, WebSVN, installed that you can find at https://skynet.cse.ucsc.edu/WebSVN. Note that the link is case sensitive. To access the web interface you need your svn repository password that you added to the subversion.auth file. Since everything uses https, google will not be indexing your code — don’t worry :).
One last small thing… the https certificate used by the https server is untrusted and expired. Sorry. You’ll have to add a security exception.