April 20, 2005 3:11 PM PDT

Torvalds unveils new Linux control system

Linux founder and leader Linus Torvalds has launched a new tool, called Git, to manage his software project, after a dispute led him to drop the previous system.

Torvalds stopped using a management system called BitKeeper earlier this month, reverting to an older, slower technique of simply e-mailing updates among the hundreds of programmers who contribute to the project. But moving to Git means the Linux project once again will have an automated mechanism to control the flow of updates and track changes.

In 2002, Torvalds had adopted BitKeeper, proprietary software developed and sold by a company called BitMover in South San Francisco, Calif. He praised it for boosting Linux programmer productivity, but almost immediately others began objecting to reliance on proprietary software.

The more important objection came this year, from the opposite direction. BitMover founder Larry McVoy complained about efforts in the open-source community to copy BitKeeper--in particular an effort by Torvalds' Open Source Development Labs colleague, Andrew Tridgell, who was working on a BitKeeper-compatible project called SourcePuller.

Torvalds' Git project, in contrast, makes no attempt to be compatible with BitKeeper, he and McVoy said in interviews Wednesday. That means more difficulties for those converting to the new system, but no friction with McVoy.

"I needed something that works for me quickly," Torvalds said by e-mail. "I was pretty sure I could do an implementation that sucks in many ways but that is sufficient for my needs (and I could do it) faster than the existing SCMs (source code management tools) could adapt to being used for something as big and distributed as the kernel."

Git does draw from the BitKeeper experience. Obvious evidence of that is the fact that neither tool houses software in a single, central database, Torvalds said. "One thing that BK (BitKeeper) did was to show how we can really do distributed development, and that way of working has been very successful. So Git is not compatible with BK, but it has been designed to be compatible with how I ended up using BK."

SourcePuller wasn't sufficient for the challenge at hand, he added. "SP doesn't actually do any of the things that we depended on with BK. It only shows you the end results. And if you can't use SP together with BK, it ends up being pointless," Torvalds said.

Git, like Linux itself, is governed by the General Public License (GPL), and about five to 10 programmers "seem to be really getting into it," Torvalds said. But he doesn't expect the project to be widely useful beyond the Linux kernel effort.

"Right now, the pain of using it (due to the rough edges) is just higher than the gain, unless you have rather specific needs--needs that the kernel development process has, but probably not very many (or any) other project," he said. "Even for kernel developers, it's certainly going to be less pleasant than BK was."

McVoy said Git is "fine for the problem Linus is trying to solve" but isn't a full-fledged source code management system. "His job is to accept patches at an enormous rate," and Torvalds has optimized his software for that task.

"What Linus has done is to focus on the 5 percent of the functionality that he needs. If you are Linus, you'll really like Git," McVoy said. "If you are a more traditional user with traditional expectations about your SCM system, then Git falls short."

Among the differences: Git can't rename a file; users must instead delete one and recreate it elsewhere with the new name, McVoy said. And it doesn't handle space efficiently; a tiny one-character change to a 1MB file in Git will result in a 2MB file, whereas BitKeeper's file will grow only by one byte.

Torvalds recognizes Git isn't flawless: "I'm proud of Git, but let's face it, it definitely has some rough edges."


Join the conversation!
Add your comment
McVoy the Spin Doctor
Can you believe the PR job?
"You must buy my product because the free product doesn't allow you to rename a file!?!!??"

Just how long do you think it will be before someone adds the feature? since it will save hundreds of dollars for each user I bet Vegas closes the book before they lose their shirt. (meaning: it will be SOON) it took Linus, what, three or four weeks to impliment what he needs... (note the article has McVoy as much as admiting that the new program does every job that Torvald(?)(appologies if it's misspelled Linus) did with the recinded free program)

if Linus took less than a month to write the core program... how long before updates (simple additions as the need arises) are submitted is likely to be just days away, if not sooner!
Posted by qazwiz (208 comments )
Reply Link Flag
When Rename is implimented.....
Whoever adds the rename command to Git should send out press releases quoting McVoy badmouthing Git and point out that the totally free program now does what McVoy cited as reason to buy his product....

.... then wait for the lawyers to come claiming they own the rename function ;)
Posted by qazwiz (208 comments )
Link Flag
This is a stupid article that misrepresents the facts
To avoid simply cutting and pasting, I'm going to post links to two Slashdot posts that well explain the inaccuracies of this article:

First, it's not as if Andrew Tridgell had a lot of work to do in reverse engineering BitKeeper, and there's no way his work would've ever required him to agree to be bound by its license:

<a class="jive-link-external" href="http://linux.slashdot.org/comments.pl?sid=146845&#38;cid=12301677" target="_newWindow">http://linux.slashdot.org/comments.pl?sid=146845&#38;cid=12301677</a>

Secondly, the license is much more restrictive than the article implies, and reverse engineering is hardly a sin of any kind. Without it, we wouldn't have Samba:

<a class="jive-link-external" href="http://linux.slashdot.org/comments.pl?sid=146845&#38;cid=12301678" target="_newWindow">http://linux.slashdot.org/comments.pl?sid=146845&#38;cid=12301678</a>

Please do us all a favor and stop reporting the spin that Linus and Larry McVoy put on this without reporting a few facts to counterract it. In this particular case (and this is one of the few cases in which that's true), Linus' version of the world cannot be trusted. And Larry's never could be.
Posted by (2 comments )
Reply Link Flag

Join the conversation

Add your comment

The posting of advertisements, profanity, or personal attacks is prohibited. Click here to review our Terms of Use.

What's Hot



RSS Feeds

Add headlines from CNET News to your homepage or feedreader.