Menu Search
Jump to the content X X
Smashing Conf New York

We use ad-blockers as well, you know. We gotta keep those servers running though. Did you know that we publish useful books and run friendly conferences — crafted for pros like yourself? E.g. upcoming SmashingConf Barcelona, dedicated to smart front-end techniques and design patterns.

Ultimate Round-Up For Version Control with Subversion

by Glen Stansberry

Subversion is a version control system1 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 Code2 use it to distribute source code.

While other version control systems, like Git3, 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 designers4 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 Sheet5
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 Book6
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 Book7

Subversion Official Documentation8
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 Setup9
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 SVN10 (Windows only)
Tortoise SVN is probably the most widely used Windows shell for SVN and is open source.

Tortoisesvn11

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.

Workbench12
Cross-platform SVN client built in Python. Open source.

SmartSVN13
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.

SmartSVN14

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

Versions17

Subclipse2718
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.

Subclipse19

Subcommander20
Subcommander is a cross-platform, open-source client that makes basic SVN functions quite easy to use.

FSVS21
FSVS stands for “Fast System Versioning”, and this open-source command-line client does exactly that.

Syncro SVN Client22
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.

SyncroSVN23

scplugin24 (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.el25
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 environment26 (IDE), then plug-ins are available to interface with SVN.

Subclipse2718
Subclipse is a plug-in for the Eclipse IDE28 for Java.

Subclipse29

AnkhSVN30
AnkhSVN is an SVN client for Microsoft’s Visual Studio31.

Ankshsvn32

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

How to Ignore IDE Project Files in Subversion34
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

Trac35
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.

Trac36

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.

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

Warehouse38

WebSVN39
WebSVN is in PHP, it’s portable, and it’s easy to install.

Insurrection40
A simple repository browser that allows for multiple repositories without browser or platform-specific extensions.

Polarion WebClient for SVN41
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 Code42
You can easily host your project’s source code for free using Google Code.

Googlecode43

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

Beanstalk44
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.

Beanstalk45

Unfuddle46
Unfuddle hosts SVN and Git, manages bug tracking, and offers 200 MB of storage for free. Premium plans start at $9 per month.

Assembla47
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.

Assembla48

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.

SVNForum49
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.

openCollabNet50
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.

Collabnet51

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 Action52
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 Action53

Practical Subversion54
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 Subversion55

Pragmatic Version Control Using Subversion56
Part of the critically acclaimed Pragmatic Programmers57 series.

Pragmaticsvn58

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

SVNversioncontrol60

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 SVN61
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 Subversion62
Go beyond backing up your work to backing up everything on your computer with SVN.

How to Set Up a Personal Home Subversion Server63
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 Debian64
HowtoForge has an excellent tutorial on how to get running with the popular Linux distribution Debian65.

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

Configuring Subversion to Use a Proxy Server67
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 Git68
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 Users69
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 Internals70
Everything you ever wanted to know about SVN 1.5’s important mergeinfo command.

Do you use version control? Link

Footnotes Link

  1. 1 http://en.wikipedia.org/wiki/Revision_control
  2. 2 http://code.google.com/
  3. 3 http://git-scm.com/
  4. 4 http://thinkvitamin.com/features/design/subversion-for-designers/
  5. 5 http://www.abbeyworkshop.com/howto/misc/svn01/
  6. 6 http://svnbook.red-bean.com/en/1.5/index.html
  7. 7 http://svnbook.red-bean.com/en/1.5/index.html
  8. 8 http://svn.collab.net/svn-doxygen/
  9. 9 http://svn1clicksetup.tigris.org/
  10. 10 http://tortoisesvn.tigris.org/
  11. 11 http://tortoisesvn.tigris.org/
  12. 12 http://pysvn.tigris.org/
  13. 13 http://www.syntevo.com/smartsvn/index.html
  14. 14 http://www.syntevo.com/smartsvn/index.html
  15. 15 http://www.versionsapp.com/
  16. 16 http://beanstalkapp.com/
  17. 17 http://www.versionsapp.com/
  18. 18 http://subclipse.tigris.org/
  19. 19 http://subclipse.tigris.org/
  20. 20 http://subcommander.tigris.org/
  21. 21 http://fsvs.tigris.org/
  22. 22 http://www.syncrosvnclient.com/
  23. 23 http://www.syncrosvnclient.com/
  24. 24 http://scplugin.tigris.org/
  25. 25 http://www.xsteve.at/prg/vc_svn/index.html
  26. 26 http://en.wikipedia.org/wiki/Integrated_development_environment
  27. 27 http://subclipse.tigris.org/
  28. 28 http://www.eclipse.org/
  29. 29 http://subclipse.tigris.org/
  30. 30 http://ankhsvn.open.collab.net/
  31. 31 http://www.microsoft.com/visualstudio/en-us/default.mspx
  32. 32 http://ankhsvn.open.collab.net/
  33. 33 http://www.visualsvn.com/visualsvn/
  34. 34 https://www.opends.org/wiki/page/ConfiguringSubversionToIgnoreIDEProjectFiles
  35. 35 http://trac.edgewall.org/
  36. 36 http://trac.edgewall.org/
  37. 37 http://warehouseapp.com/
  38. 38 http://warehouseapp.com/
  39. 39 http://www.websvn.info/
  40. 40 http://insurrection.tigris.org/
  41. 41 http://www.polarion.org/index.php?page=overview&project=svnwebclient
  42. 42 http://code.google.com
  43. 43 http://code.google.com
  44. 44 http://www.beanstalkapp.com
  45. 45 http://www.beanstalkapp.com
  46. 46 http://unfuddle.com
  47. 47 http://www.assembla.com/
  48. 48 http://www.assembla.com/
  49. 49 http://svnforum.org
  50. 50 http://open.collab.net
  51. 51 http://open.collab.net
  52. 52 http://www.manning.com/machols/
  53. 53 http://www.manning.com/machols/
  54. 54 http://www.apress.com/book/view/1590597532
  55. 55 http://www.apress.com/book/view/1590597532
  56. 56 http://www.pragprog.com/titles/svn2/pragmatic-version-control-using-subversion
  57. 57 http://www.pragprog.com
  58. 58 http://www.pragprog.com/titles/svn2/pragmatic-version-control-using-subversion
  59. 59 http://www.amazon.com/Subversion-Version-Control-Development-Projects/dp/0131855182/ref=pd_sim_b_15
  60. 60 http://www.amazon.com/Subversion-Version-Control-Development-Projects/dp/0131855182/ref=pd_sim_b_15
  61. 61 http://www.macdevcenter.com/pub/a/mac/2004/08/10/subversion.html
  62. 62 http://www.onlamp.com/pub/a/onlamp/2005/01/06/svn_homedir.html
  63. 63 http://lifehacker.com/software/subversion/hack-attack-how-to-set-up-a-personal-home-subversion-server-188582.php
  64. 64 http://www.howtoforge.com/debian_subversion_websvn
  65. 65 http://www.us.debian.org/
  66. 66 https://www.opends.org/wiki/page/MirroringASubversionRepository
  67. 67 https://www.opends.org/wiki/page/ConfiguringSubversionToUseAProxyServer
  68. 68 http://blog.fallingsnow.net/2007/08/17/maintaining-an-svn-mirror-directly-from-git/
  69. 69 http://www.onlamp.com/pub/a/onlamp/2004/08/19/subversiontips.html
  70. 70 http://www.collab.net/community/subversion/articles/merge-info.html
SmashingConf New York

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? Like SmashingConf Barcelona, on October 25–26, with smart design patterns and front-end techniques.

↑ Back to top Tweet itShare on Facebook

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

  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

    Mercurial?

    0
  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

    Derek Mounce

    March 10, 2009 1:04 pm

    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

    Marin Todorov

    March 10, 2009 1:33 pm

    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

    Tom Sinclair

    March 10, 2009 1:45 pm

    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

    catchamonkey

    March 10, 2009 2:41 pm

    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

↑ Back to top