SVN Mirroring with svnsync

Published 09 October 2014 by Runako Godfrey

Using version control for your code for a lot of reasons, but for many teams the #1 reason is to keep their code safe. For these teams, the version control system is a simple way of backing up their codebase.

But any version control is only as safe as the technical underpinnings of the repository. How reliable is the disk array? Are the backup procedures sound? Is there a disaster recovery plan in case the physical storage location is destroyed? (If you use ProjectLocker, you can rest assured that you're covered.)

But what if you need to use an in-house Subversion server for business reasons? What's the easiest way to ensure the safety of the code that lives there?

It turns out that Subversion has a little-known feature, svnsync, that can help. In a nutshell, svnsync automatically replicates your Subversion repository to another location as each commit comes in. So it produces a near-realtime replica of your primary repository. Voila! Instant redundancy!

If you put the replica in a different geographic location than the primary, you get some geographic redundancy as well. And since the replica repository can become the primary in case of catastrophe, you get an immediate improvement in your disaster readiness.

And your users don't have to do anything differently. But if you ever need to use the replica, they will be happy you have it!

Don't let the setup instructions scare you. It's really not that hard to setup svnsync to mirror your repository.

If you want very high levels of safety, you can even use ProjectLocker as your replica. We'll apply all of our redundancy and backups to your replica, just like we do to all repositories we manage. We've done this for many customers, so just get in touch if you'd like us to help you get it setup for your repositories.

Topics: Subversion

Subscribe to ProjectLocker's Blog

Follow Us

Get Updates by Email

Follow @ProjectLockerHQ on Twitter

Follow Us

Free Checklist: How to Choose Source Control for your Project