You are here

Git and Linus

Read the entire KDE development with Git thread yesterday. There's been a lot of talk of such things lately... Mark Shuttleworth made the point that using a system with easy branching could really change how we worked (and made it overly clear that he didn't mean that we should all use Bazaar).

Someone linked to a page which linked to Linus's Git talk. He gave KDE very high praise by calling us "not smart" (in having one big repo). Everyone else who disagreed with Linus was stupid and ugly. So that was neat. :-)

The problem with Linus's talk is that he uses a "pull" method of development, where he pulls in patches or merges from Git. And he doesn't recognize any other methodology as having any value. It really wouldn't work for a project like KDE and probably most projects, since there would be no one to do the pulling. Linus's full time job is pretty much to decide what to pull into the kernel. It would just slow development down to have someone like that with KDE or Amarok. Really I guess Linus doesn't see the Linux development model as being very unique in the open source world, even though it is. Or maybe Linus is a bit like the Douglas Adam character who considers his house the "outside of the insane asylum" and the rest of the world the "insane asylum" - we're all just crazy.

SVK was surprisingly not mentioned much in the KDE thread. SVK does serve me pretty well for doing local commits and transversing through the history of Amarok (since I have all 9800+ commits of Amarok stored locally). But its not really distributed at all in the way Linus meant it... I can't easily share a branch, it'd require commiting to SVN. Also its quite a bit slower then SVN, which wasn't a speed demon to begin with.

The thread concluded that having parallel VCSs would be pretty horrible, since it would require people to learn more then one system and thereby increase the barrier of entry to KDE development. But also Dirk said he would be willing to help someone setup a Hg->SVN/SVN->Hg system.