Menu Search
Jump to the content X
X

Ultimate Round-Up For Version Control with Subversion

Advertisement

by Glen Stansberry

Subversion is a version control system that many Web developers and designers use to back up their work. Subversion was started in 2000 and is quite popular in the open-source community; major repositories such as Google Code use it to distribute source code.

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.

Getting Started with SVN Link

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.

Subversion Cheat Sheet (PNG)
If you want this concise page of SVN functions and commands, an image (in PNG) and PDF version is available.

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.

Svn Book

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.

Subversion Clients Link

SVN clients allow you to bypass more advanced tools such as the command line by providing a graphical interface. Here are a few of the most widely used SVN clients.

Tortoise SVN (Windows only)
Tortoise SVN is probably the most widely used Windows shell for SVN and is open source.

Tortoisesvn

Cornerstone (Mac only)
Cornerstone is an elegant SVN client for Mac users. It’s not open source and requires a commercial license ($69 USD), but it has an excellent UI to work with.

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.

SmartSVN

Versions (Mac only)
Versions is another SVN client with a beautiful interface. Versions is unique because it syncs with the online SVN repository Beanstalk. Approximately $49 USD.

Versions

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.

Subclipse

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.

SyncroSVN

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.

IDE Plug-Ins Link

If you already use an integrated development environment (IDE), then plug-ins are available to interface with SVN.

Subclipse
Subclipse is a plug-in for the Eclipse IDE for Java.

Subclipse

AnkhSVN
AnkhSVN is an SVN client for Microsoft’s Visual Studio.

Ankshsvn

VisualSVN
VisualSVN for Visual Basic by Microsoft isn’t open source; a license costs $49.

How to Ignore IDE Project Files in Subversion
If you’re going to use an IDE on your project with SVN, check out this article on how to exclude project files from your repository.

SVN Repository Browsers Link

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.

Trac

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.

Warehouse
Warehouse is a beautiful open-source application that allows you to browse SVN repositories.

Warehouse

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.

Polarion WebClient for SVN
If Java is your bag, Polarion offers a platform-independent Java Web browser for SVN.

Hosted SVN Link

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.

Googlecode

CVSDude
CVSDude is a popular CVS and SVN repository hosting service. Plans start at $5.99 per month.

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.

Beanstalk

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.

Assembla

Subversion Community Websites Link

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.

Collabnet

Subversionary
Subversionary has a bevy of tutorials and articles in the areas of configuration and working in most environments.

Subversion Books Link

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.

Subversion In Action

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.

Practical Subversion

Pragmatic Version Control Using Subversion
Part of the critically acclaimed Pragmatic Programmers series.

Pragmaticsvn

Subversion Version Control: Using the Subversion Version Control System in Development Projects
Perfect for Web developers who want to learn more about SVN.

SVNversioncontrol

SVN Articles Link

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.

Subversion for Web Projects
Many Web developers still don’t use some kind of version control for projects. Here’s an informative article on how Web developers can get started with SVN in a local environment.

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.

How to Set Up Subversion and websvn on Debian
HowtoForge has an excellent tutorial on how to get running with the popular Linux distribution Debian.

Mirroring a Subversion Repository
This guide helps you create a Subversion utility, “svnsync,” that allows you to clone a read-only repository.

Configuring Subversion to Use a Proxy Server
Sometimes the only work environment in which you can set up SVN is on a proxy server. This article explains the extra bit of manual configuration needed to do that.

Maintaining an SVN Mirror Directly from Git
While Git is becoming more popular every day, many developers are still most comfortable with SVN. If you run a Git repository, you can create a read-only SVN repository from it.

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.

Do you use version control? Link

Smashing Book #5

Hold on tiger! Thank you for reading the article. Did you know that we also publish printed books and run friendly conferences – crafted for pros like you? For example, Smashing Book 5, packed with smart responsive design patterns and techniques.

↑ Back to top Tweet itShare on Facebook

Glen Stansberry is the editor at Web Jackalope, a blog about creative Web development.

Advertisement
  1. 1

    interesting, thanks for this great article

    0
  2. 2

    I use Subversion all the time, mostly for college coding projects, but I find it to be an awesome resource. Thanks for posting this!

    0
  3. 3
  4. 4

    Hmmm nice one.Very useful.Keep up the good work.

    0
  5. 5

    +1 for Unfuddle
    +1 For TortoiseSVN
    +1 for VisualSVN.

    Also, VisualSVN is not just for Visual Basic — it’s for Visual Studio (including other languages, like C#)

    Also, (to the person who mentioned it) Mercurial is a completely different version control system. This article was solely based on Subversion.

    0
  6. 6

    Great! I’d love to see an post like this on Git as well.

    0
  7. 7

    Sucks that you didn’t mention the best free SVN host I’ve ever found:

    http://www.xp-dev.com

    1.5 GB worth of space…free. Unlimited number of accounts, and features being added all the time. Quite top notch if you ask me :)

    0
  8. 8

    not only publishing great articles… now you’re reading my mind!

    0
  9. 9

    Redmine has a reasonable full-featured SVN browser as well as integration with issue tracking and project management.

    More info: http://www.redmine.org/
    Easy installer: http://bitnami.org/stack/redmine
    JumpBox: http://www.jumpbox.com/app/redmine

    I’ve used the Bitnami Stack and done a regular install. It’s not completely painless to setup, but it’s pretty awesome once it is!

    0
  10. 10

    There’s another free(!) SVN hoster: http://xp-dev.com

    I use it (switched from assembla when they began to charge for the service) and I’m happy with it.

    0
  11. 11

    @Derek Mounce: Do tell! TextMate has a Git bundle, but it’ll be nice to have a standalone Git client. (Not that I’m complaining much about the command line, but still…)

    0
  12. 12

    Oh and btw: NetBeans has also very good versioning plug-ins.

    I would be happy to see a post regarding the great possibilities of automatic deployment using SVN + x.

    For example with RoR and Capistrano

    Cheers,

    Chris

    0
  13. 13

    Wouter Van den Neste

    March 10, 2009 1:33 pm

    I’m using subversion for quite a while now and I have to admit it’s the best decision I’ve made in a while (when It comes to development). The only thing that’s a little annoying is when you include photoshop PSD’s in your project.

    Anyway, my conclusion is that every IT-professional should use SVN. Even if your only a one man team.

    0
  14. 14

    the complete ide for web development on mac – Coda has integrated fantastic support for SVN, really no sense to use separate editor and svn client, since Coda has also integrated sftp, ssh, preview, help, etc etc

    0
  15. 15

    Didn’t use SVN before starting a full time developer position. They use it in-house for everything so I’ve followed suit and started using it at home, great way of having backups of everything!

    0
  16. 16

    Subversion was a nice replacement for CVS, but it is now time to move to DSCM (git, bazaar, mercurial, you choose).

    0
  17. 17

    i’ve found recently InDefero, which is a good, although young, online repo browser (php-based). it actually eats some git and mercurial for breakfast too, but that’s not really the main topic here.
    On the matter of IDEs, Netbeans SCC support is really great. And It’s shame that Komodo comes with it only with its IDE version (I’m still praying for a brave, fearless and insomniac developper to implement it for the “Edit” one as an extension).

    0
  18. 18

    I fail to see how svn is a good source controll for graphics files.
    Have anyone had good experience with this?

    0
  19. 19

    What about Coda as a Mac client?

    0
  20. 20

    Nice detail there, SVN makes my life a whole lot easier!
    By the way…. you have the description of the SVN Repository Browsers section in the wrong place, surely should be straight after the title, not after the first example?

    0
  21. 21

    Anyone considering SVN for design work or web development should check out PixelNovel Timeline(www.pixelnovel.com) – it’s a Photoshop plug-in that works as a SVN client. It also comes with web storage that has GUI for browsing PSDs online, so it’s much very convenient for design-related projects

    0
  22. 22

    I’ve been with SpringLoops for a while now and love them. Good alternative to BeanStalk.

    http://www.springloops.com/

    0
  23. 23

    Henrik Kjelsberg

    March 10, 2009 4:17 pm

    I think more and more people will leave svn and go with scm´s as mercurial, git or bazar ones their clientside is as simple and well known. From my point of view, both cvs and svn are outdated.

    Would be nice to see articles like this one on these other systems. Anyone?

    0
  24. 24

    Would like to watch a screencast on version control. Is there one available anywhere?

    0
  25. 25

    Russell Heimlich

    March 10, 2009 5:09 pm

    I’m a big fan of SmartSVN on both Windows and Mac. Great compare tool to visualize the changes from version to version.

    0
  26. 26

    @hannah . there’s gitx if you really want a gui. it’s at github. i’ve always found it easier to do the command line because the commands are so short, though.

    i’m a programmer/wannabe designer. i had no idea designer used SCMs too.

    +1 for a git intro. svn is only a ‘standard’ as long as people use it, and more and more are switching over to git all the time.

    0
  27. 27

    Dustin Townsend

    March 10, 2009 6:15 pm

    I setup git not to long ago and I have an account at github. I think it works well.
    I have used SVN in the past and I think it is great too.

    0
  28. 28

    Jean-Philippe Doyle

    March 10, 2009 7:26 pm

    Having work both SVN and Perforce, the latter is commercial but does a way better overall job with great features such as multiple pending commit and easier branch management and integrations, user workspaces, etc.

    0
  29. 29

    Why oh WHY was RapidSVN not mentioned here??
    It’s actively developed, cross-platform and free. The developers are very active and respond quickly to requests, bug reports and general use questions.

    http://rapidsvn.tigris.org/

    Boo on SM for not reviewing this!

    0
  30. 30

    For those who are interested, we wrote an article about how to work in Mantis and SVN…
    Working with Mantis and SVN.

    Also a Dreamweaver SVN client is missed from the article, you can check it out …
    SVN for Dreamweaver Windows and Mac

    Hope this help, thank you.

    0

↑ Back to top