Slashdot Mirror


Linus on GIT and SCM

An anonymous reader sends us to a blog posting (with the YouTube video embedded) about Linus Torvalds' talk at Google a few weeks back. Linus talked about developing GIT, the source control system used by the Linux kernel developers, and exhibited his characteristic strong opinions on subjects around SCM, by which he means "Source Code Management." SCM is a subject that coders are either passionate about or bored by. Linus appears to be in the former camp. Here is his take on Subversion: "Subversion has been the most pointless project ever started... Subversion used to say, 'CVS done right.' With that slogan there is nowhere you can go. There is no way to do CVS right."

16 of 392 comments (clear)

  1. Source Safe by EraserMouseMan · · Score: 5, Funny

    Well Linus didn't have anything bad to say about MS Source Safe. . .

    [ducking] Sorry, I couldn't resist the urge. ;-)

    1. Re:Source Safe by HaeMaker · · Score: 3, Funny

      aaaaaaaa
      aaaaaaab
      aaaaaaac
      aaaaaaad
      aaaaaaae
      aaaaaaaf
      .
      .
      .
      1,712,928 Files...

  2. Why winge? by gilesjuk · · Score: 4, Funny

    CVS and Subversion are open source projects, Linus should fix them.

  3. Godwin's law by rustalot42684 · · Score: 4, Funny

    We ALL know that the people who use CVS and SVN are version control Nazis!

    1. Re:Godwin's law by Anonymous Coward · · Score: 3, Funny

      Revisionists?

  4. Re:Lemme check my last home appraisal... by starwed · · Score: 4, Funny

    You missed the point of the thread; to discuss git, not to be one.

  5. Cvs is already done right by fnj · · Score: 1, Funny

    "Subversion used to say, 'CVS done right.' With that slogan there is nowhere you can go. There is no way to do CVS right."

    Cvs is already done right. These would-be improvements are pointless.
  6. Re:git by Anonymous Coward · · Score: 0, Funny

    your mom is infallible

  7. Re:git by Anonymous Coward · · Score: 0, Funny

    Shut the fuck up you scmbag git.

  8. Re:Lemme check my last home appraisal... by Anonymous Coward · · Score: 3, Funny

    Yep. $1.2 million. Well if that's you're measure of correctness then you'll have to admit Linus is right and you're wrong because his house is worth more than that.
  9. RCS by flyingfsck · · Score: 2, Funny

    So what you are saying is that RCS was done right and everything done since is wrong...

    --
    Excuse me, but please get off my Pennisetum Clandestinum, eh!
  10. Re:Well, Linus is an ass, what's new. by True+Vox · · Score: 5, Funny

    Well, probably those two go together: being an amazing creator, and being an amazing ass with huge ego. Who knows.

    I disagree entirely that those two traits must go together. I'm living proof that you're wrong, in fact. I don't have a creative bone in my body.

    --
    "Gratuitous complexity is akin to chaos" - True Vox
  11. Re:Well, Linus is an ass, what's new. by Johnno74 · · Score: 3, Funny

    wow, you aren't just an amzing ass with a huge ego, you are modest about it too! :D

  12. Re:Well, Linus is an ass, what's new. by Anonymous Coward · · Score: 3, Funny
    Academics usually have some expertise in their respective area, Linus does not. He is not a genius when it comes to OS design or development. The Linux OS broke no new ground; it was an imtation of existing Unix systems. Linus digs in his heals and refuses to cede ground even when he is wrong (or rants about untested design).

    Is that you Prof. Tanenbaum?

  13. Re:There's a difference between GIT and SVN by SnowZero · · Score: 3, Funny

    Even bigger projects need specific directions, witness GCC. I am sorry but everyone who thinks distrubuted SCM are a good thing. I am going to say they are a bad thing for free software because they allow people to develop stuff in private. Yes this already happens. This is why for an example GCC's rules for branches are that they are free for all and they are used a lot. I'm sorry but this appears to be self-contradictory. If branches are good, distributed VCS's are good, because they are based around branches as a core concept. You seem to be under the mistaken belief that a branch in a distributed VCS must be private. In fact, you can push or publish any branch if you'd like to do so, and pull and merge any branch anyone makes public. All you need is for the development website to support multiple trees (this happens on kernel.org with multiple Git trees).

    Take a look at http://gcc.gnu.org/svn.html and see how many branches there are, though most of them are inactive but some are very active (and getting ready to be merged into the trunk). I guess distrubuted SCM allows for people not to develop in public any more which I say is a bad thing. I have been working on a branch of GCC and who ever says merging is hard is wrong (I am dealing with an IR change which touches all front-ends and 50% of the middle-end, the tree level and I am able to merge at least once a week and the merge sometimes fix some of the regressions I was trying to fix before :)). For the most part you seem to be arguing for a distributed VCS, which makes branching easier. If you think CVS/SVN merging is easy, then these other systems would appear to be trivial. A not insignificant thing is that you can merge changesets from any branch, not just the trunk, and everything still works when you merge with the trunk later (think branch B which needs a feature from branch A, before A is ready to merge). No VCS forces people to work in public, and in fact distributed VCS are much better about encouraging people to check in early and often, rather than waiting until a feature is completely done (a common CVS model), or checking in too early when a feature has not been fully tested.

    I don't know about you but having a policy of branches are free for all is a good thing and it causes what distrubuted SCM will cause which is more development and a "private" tree (though it is public but the branch is yours to deal with). Nothing forces anyone to hide their trees. You could require all developers to keep up-to-date trees on a centralized machine if it really matters.

    I guess people don't see the bad side of distrubuted SCM that much because they don't deal with projects like GCC. The kernel has the same issue and I think Linus does not get the idea that public development is a good thing. I don't see how you draw that conclusion, or what evidence your conclusion is based on. Why do you feel this way?

    I could have developed all of my branch (pointer_plus) in a private local tree but I would not get some of the testing I have been getting from people I did not expect to be testing my branch. Plus I don't have all the resources that other people are putting into the testing that they do. Nothing stops you from keeping the same workflow with a distributed VCS. Just put your tree somewhere where people can pull from it. You can even have people continuously following and aggregating/merging branches, allowing you to know about integration issues ahead of time.
  14. Re:git by WilliamSChips · · Score: 2, Funny

    Either that or darcs, although darcs has a major drawback in not being able to be shortened to three letters well.

    --
    Please, for the good of Humanity, vote Obama.