Slashdot Mirror


Linus Drops BitKeeper

ravenII wrote in to mention a story running on CNet, which discusses Linus Torvald's decision to no longer use BitKeeper. From the article: "Linus Torvalds is looking for a new SCM for his project's source code after a conflict involving the current management system, BitKeeper. 'I've decided to not use BK (BitKeeper) mainly because I need to figure out the alternatives,' Torvalds said in a posting. 'Rather than continuing things as normal, I decided to bite the bullet and just see what life without BK looks like.' Coverage on the BitKeeper announcement from earlier this week is also available. Update: 04/10 16:36 GMT by Z : Updated to reflect the story's origin.

30 of 548 comments (clear)

  1. Re:How about... by Scaba · · Score: 3, Informative

    Here's why not (read the PS).

  2. Re:How about... by Speare · · Score: 4, Informative
    How about Subversion

    How about reading Subversion's writeup on why that's not a good idea?

    --
    [ .sig file not found ]
  3. Not an option. by Makzu · · Score: 1, Informative

    The Subversion devs have already stated that Subversion is a poor choice for kernel development. In fact, the title of the page I just linked is "Please Stop Bugging Linus Torvalds About Subversion." Plus, Linus himself said "Don't bother telling me about Subversion" in his e-mail.

  4. Re:How about... by capoccia · · Score: 4, Informative
    >How about Subversion?

    if you read the article, you would see that linus adresses this.
    NOTE! I detest the centralized SCM model, but if push comes to shove, and we just _can't_ get a reasonable parallell merge thing going in the short timeframe (ie month or two), I'll use something like SVN on a trusted site with just a few committers, and at least try to distribute the merging out over a few people rather than making _me_ be the throttle.

    The reason I don't really want to do that is once we start doing it that way, I suspect we'll have a _really_ hard time stopping. I think it's a broken model. So I'd much rather try to have some pain in the short run and get a better model running, but I just wanted to let people know that I'm pragmatic enough that I realize that we may not have much choice.
  5. Re:Three Words by DaHat · · Score: 2, Informative

    As yet there is no good Linux client for it (V6 at least)... just wait for VSTS (Team System)... it will have 3rd party clients for just about every platform when it ships.

  6. Distributed Version Control with SVK by Anonymous Coward · · Score: 5, Informative

    SVK is a very sweet extension to SVN and actually rocks my world! :)

  7. Re:How about... by wakejagr · · Score: 1, Informative
    From the start of the thread:
    PS. Don't bother telling me about subversion. If you must, start reading up on "monotone". That seems to be the most viable alternative, but don't pester the developers so much that they don't get any work done. They are already aware of my problems ;)
    --
    Don't save Windows XP! http://www.petitiononline.com/jjw1xp/petition.html
  8. RTFA! by Anonymous Coward · · Score: 2, Informative

    Linus is looking into Monotone as you can see here.

    Might want to start figuring out how to migrate to that, instead of pestering him about subversion.

  9. Re:Slashback? Some info on Bit Keeper by mcc · · Score: 5, Informative

    Perhaps it would be helpful if you would read the Wikipedia article on Bitkeeper, which explains what Bitkeeper is, why it is relevant to the linux kernel, and why its relevance to the linux kernel might be controversial enough to make it a slashdot news item.

    Maybe the slashdot eds should start [?]-linking Wikipedia articles in story blurbs the way they used to with Everything2...

  10. He seems to be writing his own by iabervon · · Score: 5, Informative

    Primarily due to frustration with the speed of existing solutions, and the fact that they do badly with huge numbers of tiny changes to large projects (which is what he deals with), he's started writing something that he claims isn't an SCM. What it does is store versions of trees of files and allow them to be annotated. This is different from an SCM in that it lacks support for merging changes to get a version that nobody created before out of multiple versions that people created independantly. This makes it a history archival program rather than useful for collaboration directly.

    On the other hand, it's self-hosting and sparse (the previous thing he wrote when confronted by the inavailability of something he wanted) is also available stored in it. Probably, be the middle of next week (if not the end of the weekend), he'll have if set up as sufficient for his purposes, and other people will be filling in support for the way they work.

  11. open source by puffy311 · · Score: 2, Informative

    If they had used an opensource SCM from the start, they would not have to worry about changing things around now.

    1. Re:open source by harlows_monkeys · · Score: 3, Informative
      If they had used an opensource SCM from the start, they would not have to worry about changing things around now

      If they had used an opensource SCM from the start, we'd still be somewhere in the 2.4 kernel, and Linus would be insane. Linus picked BitKeeper because it was the only SCM system available that could handle the job.

  12. Re:CVS? by Taladar · · Score: 4, Informative

    Subversion is basically CVS with some problems fixed (e.g. moving of directories is now possible). The Subversion people say they wouldn't use Subversion to manage the kernel...

  13. Re:CVS? by Senjutsu · · Score: 4, Informative

    CVS's centralised repository design is more or less exactly the opposite of what Linus wants when it comes to a version control system. No distributed repositories, no foreign branching, no dependency tracking between changesets, no atomic commits, expensive branching, etc, etc.

    CVS may be the solution to some things, but it's not a solution to the problem Linus is trying to solve.

  14. What about Bazaar-NG? by Anonymous Coward · · Score: 4, Informative

    How about Bazaar-NG? It looks like it's a design based on GNU Arch that can do either centralized, or decentralized stuff.

  15. Here's a link to LWN where he talks about it by SDrag0n · · Score: 5, Informative
    He talks about some other products he's tried, why he wrote his own, and a little about how it works.

    http://lwn.net/Articles/131313/

    Check the "made the first version available" link towards the top

    --
    I don't have time to make a sig
  16. Distributed operation? by tepples · · Score: 4, Informative

    Is Subversion decentralized? Even the Subversion maintainers admit that the Linux kernel development atmosphere doesn't mesh well with the centralized CVS/SVN model. There exists SVK, a decentralized hack on Subversion, but is it mature?

  17. Re:How about... by brett_sinclair · · Score: 2, Informative
    svk may be a reasonable compromise. It is a distributed scm, but built on top of the very stable Subversion. It is very fast, even for large trees, despite being written in perl.

    It is also quite easy to use svk together with a central Subversion repository, to get the best of both worlds.

  18. Re:Actually... by tftp · · Score: 5, Informative
    Yes, you can do that. You can do anything you want with your own product. Exceptions are very rare.

    Also, you indeed were living in a shoebox :-) because BK was always licensed on a condition that the licensee does not work for a competitor, and does not work on a competing product. The definition of "competing" was at BK owner's discretion, and a lot of Subversion folks were denied the license two years ago. This was a bad deal from the start, and quite a few people said so on LKML. They were right. Search Google or LKML archives, they should have lots of discussion about that.

  19. GIT is coming along by Anonymous Coward · · Score: 1, Informative

    I've seen stuff from the subversion people asking people not to bug Linus about using subversion (it isn't distrubuted, can't easily be made distrubuted, and they ask people to quit bugging Linus about using it (they agree that it isn't what Linus is looking for). Linus built something called GIT that uses part of the Linux kernel to manage merging large trees and portions of trees with date/time/directory information. He has already shot down people who ask about using SQL (and related databases) as he states that "they are too generic and too slow", and has stated that he can stat an entire tree several hundred times more quickly than the fastest database, becuase his entire engine is optimized for kernel work. Linus has already taken a week off to do bitkeeper replacement/tool creation. It may take another week before the whole thing is finished. It seems Bitkeeper clarified how Linus can maintain large chunks of tree (big merges and so on), and Linus wants to take the parts he liked in Bitkeeper, replace the parts he hated, and go with that. Tweaks to follow.

  20. Re:The question no one has asked by BobNET · · Score: 2, Informative

    Emacs was the start of the GNU project waaaay back then what non-free program did it copy?

    EDLIN, I believe.

  21. Re:Mindshare and image bloodbath for BitKeeper by Anonymous Coward · · Score: 3, Informative
    Fair enough--but an OSDL employee was trying to reverse-engineer it, paid by OSDL

    According to Bruce Perens (I think), in posting on /., the situation is not so simple.

    Larry kept changing the terms of the free licenses

    The OSDL employee was doing the reverse engineering in his own time, he was not being paid by OSDL to do it.

    How would you like your emplyer to tell you what you can and cannot do in your spare time?

  22. RIchard Stallman Knew This Would Happen by Anonymous Coward · · Score: 5, Informative

    "The spirit of the Bitkeeper license is the spirit of the whip hand.
    It is the spirit that says, "You have no right to use Bitkeeper, only
    temporary privileges that we can revoke. Be grateful that we allow
    you to use Bitkeeper. Be grateful, and don't do anything we dislike,
    or we may revoke those privileges." It is the spirit of proprietary
    software. Every non-free license is designed to control the users
    more or less. Outrage at this spirit is the reason for the free
    software movement. (By contrast, the open source movement prefers to
    play down this same outrage.) "

    - Richard Stallman Oct 13 2002, 3:50 pm

    Maybe he is not a mad man, but actually a very wise man.

    Here is the discussion link: http://groups-beta.google.com/group/linux.kernel/b rowse_thread/thread/a98de7edab73f365/7d68ee9f364e9 3f6

  23. ClearCase blows donkeys by lorcha · · Score: 2, Informative
    Always has, and always will.

    I can't count the number of times I've gotten build failures because I updated my view in the middle of someone else's big commit. WTF is that all about?

    If I wanted that, I could use SCCS.

    And don't get me started about the voodoo that is config.spec.

    --
    "Avoid employing unlucky people - throw half of the pile of CVs in the bin without reading them." -- David Brent
  24. Darcs? by Flaming+Death · · Score: 2, Informative

    Not sure why anyone hasnt mentioned darcs - being very similar to bitkeeper and arch. And free.. and so on.. I personally use darcs over anything else, since changing from svn.. I wont be going back :-)

    www.darcs.org

  25. Re:Actually... by Tim+C · · Score: 3, Informative

    If a company does that often enough, it will lose all its customers as they migrate away to a less risky company.

    I have no idea why the BK people have done this, but it strikes me as being an incredibly foolish thing to do.

    This whole absurb scenario is an object lesson to not choose proprietary software produced by idiots.

  26. Re:He should use ClearCase. by DrXym · · Score: 5, Informative
    Heh I know :) Sadly Clearcase is an attractive nuisance, a moneypit and a piece of shit all rolled into one. It's appallingly expensive, needs high end servers to support even a modest number of developers and is very admin intensive.

    Unless you are on the same LAN as a Clearcase server, the thing is treacle slow because it sends dozens of packets flying back and forth just to figure out what items to put on a context menu. If you're using a VPN then creating a snapshot view can take many, many hours and even simple things like checkouts / checkins / diffs take minutes.

    And because it works so badly over the WAN, if you have multiple sites you must replicate - more expensive servers, more admins and more licences.

    It's not even a good source control system. It doesn't do anything aside from a dynamic view that can't be done by most other systems. Dynamic views are more trouble than they're worth anyway.

    I truly pity companies who "bet the farm" on this junk. I pity IBM who had a perfectly usable source control system in CMVC who had to switch to this Rational junk.

    For all its faults even CVS would be better. And with Subversion being available and UI frontends like TortoiseSVN, Subclipse etc. there really is no reason to be stuck with Clearcase.

  27. Really not by paskie · · Score: 5, Informative

    No, not really. What Linus is doing looks completely different. It is quite similar to Monotone if anything, in fact. It has quite a good description of itself in the README (skip the top part there :-) ).

    One consequence of what he is doing is that it is trivial to do e.g. pulling from remote repositories (basically just two rsync commands), or diffing arbitrary two trees. You can see my scripts as an example.

    --
    It's not the fall that kills you. It's the sudden stop at the end. -Douglas Adams
  28. Re:Sarcastic post... by paskie · · Score: 4, Informative

    And what you write is exactly what Linus is doing now. It is not a full version control system, but it can likely do the basic job for the kernel, especially for distribution of the tree history between developers; it is probably likely that they will use (test, improve) various version control systems on top of this, actually. (Which should be possible.)

    --
    It's not the fall that kills you. It's the sudden stop at the end. -Douglas Adams
  29. Re:The question no one has asked by SA+Stevens · · Score: 2, Informative

    There were and are non-free versions of Emacs.

    There is Gosling Emacs, which is non-free and the source code is not available. Stallman did NOT 'invent' emacs.