While other version control systems, like Git, have become quite popular among developers, Subversion (SVN) is still considered the standard for version control systems and is used for the majority of projects on the Web that need something like it. SVN provides the ability to share source code in a collaborative way, making it popular with teams for sharing and contributing to projects. It’s also a great choice for designers who want to keep versions of their personal work environments.
There are quite a few resources available for those who want to learn about SVN-like tools, tutorials and SVN clients, so that you can get started working with the popular version control system.
You might be interested in the following related posts:
Getting Started with SVN
If you’re just getting started with SVN, the hardest part is the learning curve. Here are a few tutorials to get you started on the right track and ease the pain.
Subversion Cheat Sheet If you’re looking for a more concise version of how to set up SVN, this quick cheat sheet will get you well on your way.
The Subversion Book Version Control with Subversion is an excellent book to start with. It covers every topic related to SVN, from what SVN is to how to use it to advanced usage.
Subversion Official Documentation Once you’ve gotten the basics, check out SVN’s official documentation. The documentation contains just about everything you’ll ever need and is a great reference tool.
SVN 1-Click Setup If you’re on a Windows machine, SVN 1-Click Setup will do just what the name implies: set up your SVN environment in one click with an installer.
Tortoise SVN (Windows only) Tortoise SVN is probably the most widely used Windows shell for SVN and is open source.
Workbench Cross-platform SVN client built in Python. Open source.
SmartSVN SmartSVN is another cross-platform SVN client, but targeted more at professional developers. The client comes in free and professional versions, with the professional version starting at $79 USD.
Subclipse An open-source Eclipse plug-in providing support for Subversion within the Eclipse IDE. Among its features are local history cache, various visualization tools and merging assistant.
Subcommander Subcommander is a cross-platform, open-source client that makes basic SVN functions quite easy to use.
FSVS FSVS stands for “Fast System Versioning”, and this open-source command-line client does exactly that.
Syncro SVN Client A cross-platform SVN client with a fantastic UI. One of the stand-out features of Syncro SVN is its ability to let you quickly see revisions in the same pane. $59 USD.
scplugin (Mac only) Scplugin, also open source, is much like Tortoise SVN in that it uses the Finder on the Mac as an SVN interface.
Psvn.el Psvn.el is an SVN client for eMacs, a popular open-source text editor.
iPhone SVN Log Viewer While not technically an SVN client, the iPhone SVN Log Viewer allows you to keep track of commits and changes to your SVN repository in an iPhone app.
If you already use an integrated development environment (IDE), then plug-ins are available to interface with SVN.
VisualSVN VisualSVN for Visual Basic by Microsoft isn’t open source; a license costs $49.
SVN Repository Browsers
Trac Trac is much more than an SVN browser: it’s a complete project management tool. Aside from letting you browse SVN repositories, Trac allows you to create wikis, track bugs and much more. Trac is used in many open-source projects to manage workflow and is considered the standard for this purpose.
SVN repositories are pretty plain and don’t let you browse the code very easily. By default, SVN just dumps source code into the most basic form of HTML and links. Here are a few scripts you can upload to your server to get a better interface for your project’s source code.
WebSVN WebSVN is in PHP, it’s portable, and it’s easy to install.
Insurrection A simple repository browser that allows for multiple repositories without browser or platform-specific extensions.
For those wanting a little more control over their repositories and a public face for their projects, hosted SVN might be a good solution. Hosted SVN takes the guesswork out of creating your repository and installing an SVN browser for it.
Google Code You can easily host your project’s source code for free using Google Code.
Beanstalk Beanstalk is similar to CVSDude except that it syncs seamlessly with Versions (mentioned above) and has a much more elegant design. A free version for a limited number of users and 100 MB of upload space is available. Personal plans start at $15 per month.
Unfuddle Unfuddle hosts SVN and Git, manages bug tracking, and offers 200 MB of storage for free. Premium plans start at $9 per month.
Assembla Assembla is more of a team collaboration website, but it features hosted SVN as well as bug tracking, ticketing and other collaboration features. Plans start at $2 per user per month.
Subversion Community Websites
Looking for answers to your SVN-related questions? Check out some of these community websites. Many have forums, mailing lists, training centers and more to get you primed for SVN.
SVNForum If you need help on a Subversion-related topic, look no further than SVNForum. SVNForum has a community of over 14,500 members, posting questions and answers on virtually any topic.
openCollabNet CollabNet is from the same organization that manages the SVN project, so it provides training resources and means of connecting with CollabNet’s SVN engineers.
If you want a few books to browse offline, then here are a few titles sure to help you understand all things SVN.
Subversion in Action While it may be a tad dated for a technology book, Subversion in Action provides an excellent overview of how to use SVN in everyday scenarios. It is an excellent starter book for SVN newbies.
Practical Subversion Practical Subversion, Second Edition is authored by two Subversion project contributors and is the most up-to-date book on the version control system. You can preview the first chapter in Google Preview.
Pragmatic Version Control Using Subversion Part of the critically acclaimed Pragmatic Programmers series.
Subversion Version Control: Using the Subversion Version Control System in Development Projects Perfect for Web developers who want to learn more about SVN.
Given SVN’s popularity, it’s no surprise there are plenty of tutorials and articles on how to wield it. Here are a few of the best.
Making the Jump to SVN A somewhat dated but still highly relevant article on the benefits of SVN, complete with an in-depth overview of how SVN works.
Keeping Your Life in Subversion Go beyond backing up your work to backing up everything on your computer with SVN.
How to Set Up a Personal Home Subversion Server Lifehacker has a great article from 2006 giving a thorough rundown of how to get SVN rolling on your home machine for personal use.
Top 10 Subversion Tips for CVS Users There was a time when CVS was the most used revision control system. Even though SVN has taken the reigns, some CVS users out there might benefit from learning the reasons why one would switch to SVN.
Mergeinfo - Understanding the Internals Everything you ever wanted to know about SVN 1.5’s important mergeinfo command.
- 6 Version Control Systems Reviewed
- Modern Version Control With Git
- Moving A Git Repository To A New Server