QTM moving to Sharesource

Submitted by Matthew Smith on Thu, 2008-07-10 23:02.

This week I took the decision to start using Sharesource, a free hosting service for open-source software, based in France (so I can gather); the project base at Sharesource can be found here. My main motivation for this was to try out their source-code management (more on that in a minute), but to be honest, I have found the slowness of SourceForge rather annoying recently. I suspect that there are simply too many projects on it, being as it is what people think of when they think of project hosting. Sharesource seems very well-designed, it's fast, and it also offers screenshot hosting which do not require the screenshots to be a maximum of 640x480 - let's face it, nowadays only PDAs have screens with that resolution, and my QTM windows, never mind my screen, are invariably bigger than that. So, I have uploaded some new screenshots, which you can find in the Links panel.

The new source code management is Mercurial, a Python-based distributed source code management system which reached version 1.0 earlier this year (it's now on version 1.01). Of course, this being open source, there had been plenty of versions before version 1.0; among other big projects using it are Aptitude (the replacement for apt-get on Debian), ALSA (Linux's sound system), Mozilla, Java and NetBeans. I looked round quite a few places for a host offering this kind of source code management, and looked into the relative merits of Mercurial and its nearest competitor, Git (the system developed by Linus Torvalds after BitKeeper ceased to be available). There are a number of hosts now offering one or both of these systems, with SourceForge restricted to CVS or Subversion, although some have installed Mercurial on their SF web space with SF's blessing. I settled on Sharesource because it seemed the freshest-looking, because Mercurial seemed more stable than Git although the latter has plenty of users besides the Linux kernel (Rails, for example), and because - unlike Savannah, which offers both systems and is run by the Free Software Foundation - it doesn't require you to abide by their ideology and proclaim their message.

Anyway, information on how to contribute, and how to check out recent versions of the QTM source code, will appear in the documentation (under "Using QTM") shortly. I will not shut my SourceForge account down, because all my existing file releases are there and the entire history of the project's source code is in their Subversion and CVS repositories.

For anyone wondering why distributed source code and version control systems are suddenly becoming so popular, a major advantage is that they offer far more flexibility when working with local repositories. You can, for example, branch the code locally and still use the version control software to manage it; you can also do this while your computer is not connected to the Internet. With Subversion (and CVS), there is only one version-controlled repository; every other copy is a mere "sandbox". Linus Torvalds, who has stronger views than mine on the demerits of centralised code management systems (although I do agree with him that CVS sucks), gave a talk on his Git software at the Google campus, which you can watch here. It is rather pleasant to see that there is now such a choice in code control; when I first started developing QTM (then Catkin) in 2004, it was pretty much CVS or GNU Arch (which not many people seemed to be using) and that was it.