Just a quick addition the the previous article. Here is a great rant by Larry McVoy on the Linux Kernel Mailing list talking about the pure difficulty of developing a distributed version control system (aka: dcvs). Larry is the founder of BitMover, the company that makes BitKeeper (aka: BK). One sentence that really stands out to me is his explanation of how to perceive a dcvs:
controlled user level file system with no limits on any of the file system
events which may happened in parallel. Now put the changes back together,
correctly, no matter how much parallelism there has been.
BitKeeper is possibly the best revision control system ever created (unfortunately it costs money that I don’t have.) Larry started BitKeeper to help out Linus’s work on the Linux kernel. There are many people who really don’t like BK because it is not under a GPL license. Its so good at revision control that its worth it anyway to Linus because of the time it saves him (its not unusual to have Linus merge 3000+ pushes a day into the mainline kernel.) Linux kernel developers get to use BK for free.