[link|http://www.theregister.co.uk/2005/04/06/torvalds_bitkeeper/|Linus Torvalds defers closed source crunch] For the past 3 years Linus has been using BitKeeper as his primary code management tool. Until now, BitKeeper has had dual licenses, both open source and closed source. This in and of itself was very controversial in the open source community. Now that BitKeeper is going closed source only if Linus continues using bitkeeper it will create a crisis.
The fact is that it seems that there is no open source SCCM that comes close to BitKeeper. The issues with CVS are well known to everyone, Subversion is a better CVS then CVS but continues along the same lines and is missing important features like changesets.
Has anyone here used BitKeeper? I would really like to understand what makes it so good. One of the main advantages of BitKeeper seems to be that it is a distributed changeset based system as a opposed to a snapshot based central repository system. Here is an interesting article comparing these 2 approaches [link|http://www.reverberate.org/computers/ArchAndSVN.html|On Arch and Subversion] Arch is the open source response to BitKeeper but I assume that it is not mature enough to be used on a project like Linux.
This is a fascinating article written by the Subversions developers [link|http://subversion.tigris.org/subversion-linus.html|Please Stop Bugging Linus Torvalds About Subversion] about why Subversion is not a good tool for Linux development.
"We, the Subversion development team, would like to explain why we agree that Subversion would not be the right choice for the Linux kernel.
Subversion was primarily designed as a replacement for CVS. It is a centralized version control system. It does not support distributed repositories, nor foreign branching, nor tracking of dependencies between changesets. Given the way Linus and the kernel team work, using patch swapping and decentralized development, Subversion would simply not be much help. While Subversion has been well-received by many open source projects, that doesn't mean it's right for every project.
Someday, Subversion may have the features Linus needs, but they're just vaporware until then, and they haven't been our immediate priorities. For example, the feature we added most recently (in response to user demand) was file locking \ufffd not exactly something the Linux kernel team was clamoring for. Linus needs a version control system that supports his working model today, something like Monotone, which he mentioned in his post, or GNU Arch, or SVK (which implements distributed functionality on top of Subversion), all of which support at least some of the features that attracted Linus to BitKeeper in the first place."