Installing Subversion
This should make easy using brew from a Mac.
It is important to make sure the version of Subversion installed is compatible with the subversion installed on the server. Subversion 1.7 and 1.8 (1.9 is the latest stable version but I can’t really speak for it) are proven to be working interchangeably, source code checked in using 1.6 may not be easily upgraded.
Certificate Conversion
A certificate is used in subversion server to verify client’s identify.
Typically a certificate (.p12 or .pem) should be assigned to you for this purpose, and it can be converted back and forth to other certificate formats using openssl (more on the conversion in the next section).
In case you don’t know what p12 and pem are, p12 is a certificate format which is fully encrypted and password protected. While pem certificate is just like p12 containing both public key and private key, but also root certificates.
Now, it is jolly good that you have your p12 with you. But a lot of times, you need more than just p12. In this case, a pem file is also required. As a quick guide, I have listed most common commands used to convert certificates.
Convert p12 to pem
Convert p12 to pem (with password)
Extract certificate from p12
Extract key from p12
Generate p12 from cert and key
Convert pem to p12
Change p12 password
Configure Subversion to Use Certificate-based Authentication
After installation, Subversion will create a directory structure like the following in home directory.
In servers
file, the following configurations are needed for the extra authentication.
First of all, a group
needs to be added with URL to the source control server.
Then in the group definition, a list of detailed settings (including cert and password) are required, with optional settings such as proxy.