## Subversion Testimonials

Here are Subversion testimonials, and a list of prominent projects using Subversion. If you're trying to persuade your organization to try Subversion, the material below might help. See also our links page.

### Open Source Projects using Subversion

- ASF: The Apache Software Foundation.
  Project site: http://www.apache.org/
  Repository: http://svn.apache.org/repos/asf/
  The Apache Software Foundation is a community of many open-source software projects, including the popular Apache HTTP Server.

- Samba: SMB services for *nix systems.
  Project site: http://www.samba.org/
  Repository: svn://svnanon.samba.org/samba
  Samba is an Open Source/Free Software suite that provides seamless file and print services to SMB/CIFS clients.

- Mono: an open-source implementation of C#/.NET.
  Project site: http://www.mono-project.com/
  Repository: svn://mono.myrealbox.com/source/
  Mono is a comprehensive open source development platform based on the .NET framework.

- PuTTY: Win32 SSH/Telnet implementation
  Project site: http://www.chiark.greenend.org.uk/~sgtatham/putty/
  Repository: svn://ixion.tartarus.org/main/putty/
  PuTTY is a free implementation of Telnet and SSH for Win32 and Unix platforms, along with an xterm terminal emulator.

- Zope: web application server/framework.
  Project site: http://www.zope.org/
  Repository: svn://svn.zope.org/repos/main/Zope
  Zope is an open source application server for building content managements, intranets, portals, and custom applications.

- Plone: content management system.
  Project site: http://plone.org/
  Repository: http://svn.plone.org/
  Plone is an out-of-the-box ready content management system built on the powerful and free Zope Application server.

- Xiph: open-source multimedia protocols.
  Project site: http://www.xiph.org/
  Repository: http://svn.xiph.org/
  The Xiph.Org Foundation is a non-profit corporation best known for the development of the Ogg Vorbis sound compression format and the Ogg Theora video codec.

- Debian: a popular Linux distribution.
  Project site: http://www.debian.org/
  Repository: http://svn.debian.org/
  Debian GNU/Linux is a free operating system.

- CUPS (Common UNIX Printing System): printing services for Unix-based OS's.
  Project site: http://www.cups.org/
  Repository: http://svn.easysw.com/public/cups/trunk/
  CUPS provides a portable printing layer for Unix-based operating systems.

- Irssi: a GPL-licensed IRC client.
  Project site: http://www.irssi.org/
  Repository: http://svn.irssi.org/
  Irssi is a popular and powerful text mode IRC client for Unix-like operating systems.

- Linux From Scratch: a Linux distribution built from source.
  Project site: http://www.linuxfromscratch.org/
  Repository: svn://linuxfromscratch.org/LFS/
  A Linux distribution which gives you the power to build your own, customized system and teaches you how a Linux system works internally.

- Conectiva: a South American Linux distribution.
  Project site: http://www.conectiva.com.br/
  Repository: https://moin.conectiva.com.br/RepositorySystem
  Conectiva develops and distributes the Conectiva Linux distribution, which is aimed at use in Latin America.

- Trac: a project management system.
  Project site: http://projects.edgewall.com/trac/
  Repository: http://svn.edgewall.com/repos/trac/
  Trac is an enhanced wiki and issue tracking system for software development projects. It provides an interface to Subversion, an integrated wiki and convenient report facilities.

- GNU Enterprise: enterprise application development.
  Project site: http://www.gnuenterprise.org/
  Repository: http://www.gnuenterprise.org/developers/svn.php
  GNU Enterprise (GNUe) is a meta-project which is part of the overall GNU Project. GNUe's goal is to develop enterprise-class data-aware applications as Free software.

- Ethereal: a free network protocol analyzer
  Project site: http://www.ethereal.com/
  Repository: http://anonsvn.ethereal.com/ethereal/
  Ethereal is a free network protocol analyzer with all the standard features you would expect in a protocol analyzer, and several features not seen in any other product.

- Netfilter: the Linux packet manipulation framework
  Project site: http://www.netfilter.org/
  Repository: https://svn.netfilter.org/netfilter/
  netfilter is a set of hooks inside the Linux kernel that allows kernel modules to register callback functions with the network stack. iptables is a generic table structure for the definition of rulesets.

- TWiki: a web based collaboration platform
  Project site: http://twiki.org/
  Repository: http://ntwiki.ethermage.net/svn/twiki/
  TWiki is a structured wiki, typically used to run a project development space, a document management system, a knowledge base, or any other groupware tool on the network.

### Testimonials

- Jason D. Lee of Hobby Lobby `(15 Dec 2004)`

  I work for a large retailer in the US. We are currently going through a certification process with VISA. Part of the compliance demands are that we track all router and switch configuration changes, noting what changes were made and who made them. We had a vendor come in and demo a very complicated system that did the job, but was priced at around $80,000. Even in the middle of a $1M+ project, that's a lot of money. When one of the network administrators told me what the price tag was, I immediately pointed him at Subversion. A few days later of testing and developing methodology, we now have the router configs for our 300+ stores as well as our corporate routers safely stored and tracked in Subversion. Our network administrators use TortoiseSVN for all of the commits, and those with access can view the history using WebSVN, and all this cost us one 1U server, which was reclaimed from a decommissioned server cluster. It has been fast, stable and easy to use. Here's a big thank you to the entire Subversion team, especially the ones who tireless answer questions on IRC. You have built an amazing system that I recommend every chance I get.

  Jason Lee
  Programmer/Analyst
  Hobby Lobby Stores, Inc.

- Ron Bieber `(23 July 2004)`

  I currently manage a group of about 20 developers for a Fortune 500 company. We used CVS from January of 2001 until May of 2004 when we converted all of our repositories over to Subversion.

  The advantages we received from Subversion are immense. Before our conversion to CVS from VSS, we had two full time employees managing our production builds. Upon conversion to CVS we cut that resource count down to one. This resource handled all branching and merging activities, reporting activities, and manipulation of the CVS repository to move files while retaining history. The CVS branching and merging was just too cryptic (and took too long) for anyone to want to learn it. We had two CVS "experts" in house which included me and one of my direct reports. We were constantly called in to resolve issues. I myself spent a ton of time managing the support of the CVS repositories.

  After running across Subversion by chance in May of 2003, I started piloting it at home. As I used it more, I became convinced that this was a tool that my team needed in order to increase our productivity. After using it for a while, I was able to come up with some specific areas that justified our conversion to Subversion in order to maximize our productivity and code quality:

  1. Atomic commits - The lack of atomicity in commits was a huge problem for us with CVS. Subversion gives us the confidence that when we commit, everything went into the repository.
  2. The ability to back out changes before going to production--using an activity branching model, we can allow developers to branch per activity and only merge to the main source base after code reviews have been performed. If there are problems, we have one revision we can back out that includes the full changeset for that change. While the repository level revisioning was a shift for my developers to make that didn't happen immediately, it begins to make sense when an activity had to be removed from the build. In CVS we had to go through each file looking for revisions that were effected by a change. Subversion now manages this for us.
  3. Decreased build time. We run CruiseControl, and the checkout times we were experiencing with CVS, along with our requirement to tag of our source base after each build caused our automated build cycle to take an inordinate amount of time. With the restriction that all production changes MUST go through the build, this made emergency situations very stressful. The cheap copy functionality of Subversion decreased the time it took to get a change into source control, through the build system, and into deployment packages by 80%, greatly increasing our response time.
  4. Directory Versioning - this was a big deal that caused us to actually evaluate Clearcase at one point. The CVS Attic was killing us in checkout time and build time with the velocity of change we were making to the source base. When checkout times got too slow, we would have to wipe out the attic, effectively wiping out the history of our source base. With Subversion, we can remove something from the repository and not suffer performance penalties later (and still be able to get the deleted contents back).
  5. Simpler (and faster) branching - we no longer have a full time FTE managing branches. We are now cycling this activity through the group. Each developer can perform this activity, because it is now part of his daily work.

  As a manager, converting to Subversion was one of the best decisions I have made thus far that had a such a direct and highly visible impact on the productivity of my team.

  I hope this helps you make your case for Subversion. My personal opinion is that no one should even consider CVS at this point in time. Subversion is a great product and the support you get just on the mailing lists alone (from the development team no less!) is second to none.

- Ross Mark of Controlling Edge Inc `(22 July 2004)`

  For my own company Controlling Edge and at one of my customers S4 Technology (www.s4-technology.com) I have been running subversion since 0.17 and have never looked back. While there were a few issues initially we have never lost anything and currently have around 20 repositories containing everything from source code, documentation to complete product installations. We use subversion to install and upgrade the software on our servers. Once we copy the svn client onto the box the entire installation is a simple svn co plus the asvn to restore symlinks, devices and file permissions. Upgrading between releases with svn is great as it automatically merges any changes to local configuration files with new entries for the latest version. We even use svn to store file system images for our embedded devices (linux file system). Currently we have to check out the svn image on a server and then downloaded to our embedded device via rsync. We don't have the memory for a full svn client nor the disk space for the working copy but one day we will write our own svn client that can just do the checkout without the need for the wc support files or the memory overhead.

  For the past 9 years I had been installing CVS at customer sites that required version control and wouldn't hesitate now to recommend SVN instead.

- John Szakmeister `(21 July 2004)`

  I work for a government contracting facility. We develop everything from hardware, to full-fledged software applications, all of which supports mission-critical activities. We're currently using it on one of our most productive teams, and houses about 3 years worth of work (for about 14 developers). We started off with CVS, and found that the customer was constantly coming back with request for features and upgrades. Our small test projects would turn into fully-funded applications, and as such, we had to restructure them. It was just too painful with CVS, and we decided to look for something better.

  We found Subversion when it was at version 0.17. We started with just a few developers using it, and then migrated our other developers over time. I can say without question that it has been one of the best decisions that we've made. Subversion works better than CVS ever did. We can detect corruption before it gets to be a problem, we get atomic commits, and directory versioning. All of which has made our development process and our ability to adapt to the customers' ever-changing requirements that much easier. Plus, it natively supports both the Windows and Linux platforms (versus the mixing of CVS and CVSNT that we had before), which is our primary development platforms. We've never lost any data, and our developers have found it to be a very intuitive tool. Subversion has been rock-solid in our environment, and very much complements our software engineering practices. I can't speak highly enough of it.

- Stuart Robertson of Absolute Systems, Inc `(5 May 2004)`

  I introduced SVN to Absolute Systems Inc. (www.absolutesys.com) where I work about a year ago, and for about 8 months we ran internal SVN pilots, played around to gain experience and trust, etc.

  In the last 4 months we have migrated all of our internal product source repositories from Visual Source-Safe to SVN using an internally-written VSS-to-SVN migration tool.

  Our largest SVN repository is now 3.7GB and currently has 68806 revisions. We are running SVN 1.0.1 + Apache 2.0.48 on Linux. ...

  SVN is a superb piece of work, and it is a *huge* step forward from VSS. To put things in perspective... previously we had 26 VSS databases for one product, primarily because of problems with VSS when the repositories grow large. As you can imagine, trying to manage product releases across so many repositories was really painful.

  Now, with SVN, *all* of the artifacts for that same product are in a single repository, meaning that with a few cheap copy operations all of the sources that make up a given release can be grouped together. ...

- Gustavo Niemeyer of Conectiva Linux `(25 February 2004)`

  I'm sure you are aware about the fantastic product you people have built, but I'd like to tell you a little story which should give new users some comfort about it.

  Here in Conectiva we used to maintain our packages in a file based system, storing the latest SRPM packages, and also some old versions in case something bad happened. For a long time we wanted to build some system which would make our life easier in the daily work, and at the same time would give us some flexibility accessing historic information.

  Shortening the history a lot, 1 year and 6 months ago, the first revision was committed into our repository:

            % svn log https://svn.distro.conectiva/repos/cnc -r 1
            ------------------------------------------------------------------------
            r1 | niemeyer | 2002-08-27 17:12:04 -0300 (Tue, 27 Aug 2002) | 1 line

            Created basic structure.
            ------------------------------------------------------------------------

  Since then, 5 complete Conectiva Linux distributions were committed into the repository, and every single update in the distribution is done using Subversion. We've already surpassed 50000 revisions, in a 30GB repository. Even though we have had space, memory, and other kinds of problems around the repository, I'm proud to say we have never lost a single bit of information since then.

  Based on this, the least I could do is sending a big THANK YOU for everyone involved in the project.

- Mark Bohlman of Teledata Communications `(21 July 2004)`

  Teledata Communications has been using Subversion for storing all of the source code on all our software products for the past year (since version 0.24). I have been very happy with the overall results and they way that developer impacts are minimal. We have not lost a single byte of code nor had any significant issues with using Subversion since the beginning. I attribute part of the productivity gains we have see in the past year to the move away from our prior system with locking (and the corresponding messages back and for to have something 'unlocked'). We continued to expand the use of the product to all groups in the company.

  Mark Bohlman
  Software Development Manager

- Mark Grosberg, regarding Assenmacher Specialty Tools and GladeSoft `(21 July 2004)`

  AST makes automotive scan tools. We keep our source code for both the embedded side and the Windows interface side under Subversion. In addition we keep our (large) databases under Subversion as well.

  GladeSoft sells an embedded webserver toolkit and application framework. Subversion stores all of our code and documentation. In addition we store all of our business records in Subversion; so I guess we can't pull an Enron as easily :-)

  Neither company has lost a single change with Subversion. Both companies also have satellite workers who use SSL to access the source repositories. Subversion administration is relatively straightforward provided you use Apache so there are no permission problems. At AST most of the server administration is done by one of the mechanics who has other work to do.

- Robert Zeh of Error Free Software `(23 July 2004)`

  I manage a 13 member application development group for a trading firm. There are about 9 other developers outside the group, and some others, so we have about 20 people using our subversion repository.

  For the past 10 years we used SCCS. It was very frustrating --- files could not be renamed or moved, developers would forget about locks they had acquired, and remote development was next to impossible. SCCS also made our limited Windows development painful (we are a Unix shop).

  Since we switched to subversion things have been much better. Our entire history was transported into our Subversion repository, so none of our history was lost. I wrote a Python script to transform it directly from SCCS to Subversion, and it was painless.

  Conflicts have been very rare. The ability to easily branch has been very useful; developers can make commits to branches without breaking other people's code. It's easier to see what people are working on as the commits hit our internal commit mailing list. Since we tag each release, we're able to determine which source code contributed to a release. TortiseSVN makes Windows development easy (no more ftping files over, or trying to build on a remotely mounted samba drive).

  Robert Zeh
  Manager, Application Development
  Error Free Software

- Chris Wein of Mobilygen `(23 July 2004)`

  I also have had a very positive experience moving from CVS to Subversion in a commercial setting. We are a small-ish silicon valley startup that used to have everything in CVS. Shortly after I joined as s/w manager I switched the s/w team to SVN (0.37) with excellent results. We have had zero loss of data, zero down time, with effective branching, easy repository restructuring and constant time tags as our big positives. The entire company will be moving in the near-ish future based on our pilot. And of course the support from this list is fantastic.

  [Fair play dictates that we also include the wish-list portion of Chris's testimonial...]

  As for my wishlist, it is short - completely seamless and foolproof tracking of merge history at the same level as the commercial tools. I don't want to remember revision numbers, I just want to branch and merge with the tool remembering common base versions etc. This is really the only thing I miss about ClearCase.

  [We agree :-). Better merge tracking is on Subversion's long-term roadmap.]

- Martin Pittenauer of SubEthaEdit `(2 June 2004)`

  We are using Subversion since version 0.17 and it never let us down. On contrary it provided a much better experience than any versioning system we have used before, including CVS and perforce. With Apple adding support for .svn files within NIBs with Xcode 1.2 we are certain that subversion is the ideal versioning platform for modern software development on Mac OS X.

- Sebastien Cevey `(28 February 2004)`

  ... I've been using Subversion for personal and team projects for a few years now. I never regretted it, except for the deep frustration I feel everytime I have to go back to CVS.

  I am glad to have introduced many people to this software, through projects, talks or a course on versionning systems. I haven't heard anybody disappointed by it, and this doesn't surprise me. ...

- OS News article reader `(21 April 2004)`

  I recently evaluated both subversion and arch and chose subversion for my company. Probably the number 1 reason was the subversion book-- arch is not documented as well as subversion. All I want a centralized repository where me and 2-3 other developers can collaborate. I don't want to push the envelope on version control-- the existing models work great for me and 99% of the open source projects out there. I don't need to create branches while on an air plane. I do need to easily move files around in my repository. Subversion it is!

### Articles and reviews

- "The Subversion Project: Building a Better CVS" by Ben Collins-Sussman
  http://www.linuxjournal.com/article.php?sid=4768

- "Single-User Subversion" by Rafael Garcia-Suarez
  http://www.onlamp.com/pub/a/onlamp/2002/10/31/subversion.html

- "Multiuser Subversion" by Rafael Garcia-Suarez
  http://www.onlamp.com/pub/a/apache/2002/12/19/svn2.html

- "Using the Subversion Client API" by Garrett Rooney
  Part 1: http://linux.oreillynet.com/pub/a/linux/2003/04/24/libsvn1.html
  Part 2: http://linux.oreillynet.com/pub/a/linux/2003/05/15/libsvn2.html

- Subversion articles by Shlomi Fish
  http://better-scm.berlios.de/docs/shlomif-evolution.html
  http://better-scm.berlios.de/subversion/compelling_alternative.html

- "Subversion for CVS Users" by Mike Mason
  http://osdir.com/Article203.phtml
  http://slashdot.jp/journal.pl?op=display&uid=12&id=200792 (Japanese translation)

- "Dispelling Subversion FUD" by Ben Collins-Sussman
  http://www.red-bean.com/sussman/svn-anti-fud.html

- "Debunking BitMover's Subversion Comparison" by Karl Fogel
  http://subversion.tigris.org/bitmover-svn.html

### Comparisons

- "Better SCM" comparison between version control systems:
  http://better-scm.berlios.de/comparison/