Deploy svn on your server

SVN deployments are not always easy and straightforward. I prefer to have a web-interface such as WebSVN that will allow you to see the source code and check differences in between versions from a simple web-client. This is fine for reading, but not useful for getting a working copy to your local machine.

For downloading the source-tree, the branches or trunk, one would use one of the access protocols. The most straightforward is HTTP. This is understood by everyone and allows a simple viewer even without WebSVN. For commits, we would use ideally HTTPS. Both protocols require the WebDAV protocol to be deployed.

If you are working on a local machine, or in a local Unix/Linux/Mac environment, one would choose SVN or SVN+SSH. Given the difficulty of setting up SSH in a corporate environment from a Windows machine, I do not believe this is a real option for a vast majority of users. (Yes, some developers are living in a Windows corporate world.)

Lets assume the following scenario. Developer is somewhere on the internet, the repository is in corporate walls and a firewall is sitting in between. The correct set-up would be. HTTPS on the developer’s pc, connect to proxy forwarder gateway at corporate DMZ, forward this to in-house HTTPS WebDAV enabled SVN server.

The trouble with this set-up is that while the developer can browse the repository over HTTPS (or HTTP) or by means of the WebSVN directory, he cannot check-in if his pc is located behind a Microsoft proxy server…

Error getting OPTIONS – error 503, or MKACTIVITY – error 503.

I am still looking into a resolution for this problem. Any help welcome….

Subversion server requirements

Information compiled from different internet sources….

Subversion server has been certified on:

Windows 2003/2008 Server 32/64 bit:
– JRE 1.6 or JDK 1.6

Note for windows: Subversion Edge works on all versions of Windows XP and later, including Windows Vista and Windows 7.

Red Hat Enterprise Linux 5.x, CentOS 5.x, SuSE Linux Enterprise 11.x 32/64 bit:
– Java 1.6 JRE/JDK must be installed. We recommend the JRE provided by Sun/Oracle. Python 2.4 to 2.6 must be installed.

CollabNet Subversion Server v1.6.13 (for Sun Solaris 10 / SPARC):
Supported Subversion backend: FSFS
Supported Apache Modules: mod_dav_svn, mod_authz_svn, SSL, LDAP
Prerequisites:
– Install the CollabNet Subversion Client before the CollabNet Subversion Server.
– The user needs superuser (root) privileges to install and uninstall CollabNet Subversion.
– If you want ViewVC support, install the “extras” package after the server, but before the server configuration is performed.

CollabNet Subversion Server 1.6 (Platform: Solaris 10 / x86):
Supported Subversion backend: FSFS
Supported Apache Modules: mod_dav_svn, mod_authz_svn, SSL, LDAP
Prerequisites:
– Install the CollabNet Subversion Client before the CollabNet Subversion Server.
– The user needs superuser (root) privileges to install and uninstall CollabNet Subversion.
– If you want ViewVC support, install the “extras” package after the server, but before the server configuration is performed.

Subversion server also runs on:

Explicitely listed OSes with available binaries: AIX, Debian Linux, Fedora, FreeBSD, HP-UX, NetBSD, OpenBSD, Mac OS X, Suse, Ubuntu.
Subversion can also be compiled from source. Subversion should work on any operating system that the Apache httpd server runs on: Windows, Linux, all flavors of BSD, Mac OS X, Netware, and others.

Professional subversion support from third-parties:

All major platforms, available from multiple companies worldwide.

Manual: http://svnbook.red-bean.com/nightly/en/svn-book.pdf

Redmine

How to install redmine on a Mac:

http://www.apple.com/downloads/macosx/development_tools/bitnamiredminestack.html