Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Linus Tries Out BitKeeper

Posted by timothy on Wed Feb 06, 2002 09:00 AM
from the shaking-up-the-betting-pool dept.
Flammon writes: "Linus has been overloaded with patches for a while and recently the issue started to become hot again. In an unprecedented move, Linus has started using BitKeeper, as reported by Linux Today. The benefits of BitKeeper are already showing from the large amount of detail provided in the latest unstable kernel pre-release." eirikref adds: "Read Linus' own statement and take a look at the BK web interface."
+ -
story
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • PPC Kernel (Score:4, Informative)

    by NewbieSpaz (172080) <nofx_punkguy@noSpAm.linuxmail.org> on Wednesday February 06 2002, @09:06AM (#2961131) Homepage
    IIRC, the PPC Kernel is maintained through BitKeeper, and has been for quite some time.
  • I wonder if the nice people at Ask Jeeves [ask.com] are going to mind having their (presumably trademarked) logo swiped for this?
  • by Noryungi (70322) on Wednesday February 06 2002, @09:11AM (#2961145) Homepage Journal
    Isn't BitKeeper a (gasp!) closed-source commercial software?

    Shock! Horror! Has Linus Torvalds turned to the dark side of the code?!?!

    Stay tuned for the next episode of ... TUX, Episode I: The revenge of the Borg!!
    • by Anonymous Coward on Wednesday February 06 2002, @09:26AM (#2961208)
      Bitkeeper is available under two licenses. The commercial license costs money and comes with support. The non-commercial license does not cost money., but it has a requirement that all your ChangeLogs must be sent to a world-readable server controlled by BitMover.

      Bitkeeper source is available, but it's illegal to redistribute a version of Bitkeeper with the mandatory open logging stripped out.

      Bitmover Inc. wants to avoid the situation where people use bitkeeper like gcc, taking free software tools but not giving anything back. You can pay Bitmover money, or you can use a free-as-in-beer version that is suitable for software libre and unsuitable for closed-source software.
        • Maybe they did it to force you to decide if you want to be part of the Free Software/Open Source community or not. It's annoying to me as well when I can't have my cake and eat it too, but I don't complain about the people that make cakes :)

          It's just like the GPL - the license is a means to form and defend the community for the good of the community. If you don't like it, that's OK too, but don't say that those community-maintaining features are the problem. They're a feature, not a bug.

    • by mons (124270) on Wednesday February 06 2002, @09:28AM (#2961216)
      If it is comercial, what is Jeeves doing on their web interface, he programmed it or something?

      Maybe I should just ask him.
    • by Komodo (7029) on Wednesday February 06 2002, @09:44AM (#2961270) Homepage
      (IANAL)

      Well, Bitkeeper's license isn't GPL, nor do I think that it's been certified as an 'Open Source' license by Eric Raymond's definition. However, it's got some interesting features that are as interesting and powerful as the GPL, and that even work in the public interest.

      You can get it for free (as in beer) and it says that it will revert to GPL if they go out of business (eg, their OpenLogging servers go down for more than 180 days)... which is an interesting clause that ensures that 'abandonware' becomes a public resource.

      The one scary part is that you MUST submit metadata to their OpenLogging system, or pay money for a 'closed use' license. Now before you hurl, consider... all open source projects already have all their metadata (and all their source too!) out in the open!

      Is this really so bad? People who don't want to share, have to pay... it sounds like it's punishing institutions that don't produce open source with Bitkeeper (individual use is exempt). Richard Stallman might be pleased!

      Apart from that, the only other funny part of the license that I see, is you lose your license if you sue BitMover over intellectual property rights. I'm not sure what to make of that, I guess it's a way to cover their own butts. I'd be upset if Microsoft had it in their license, but here, it seems appropriate.

      So while they aren't using the GPL or a BSD license or the Artistic license or any other common, popular OSS license, they ARE going out of their way to work with developers and users instead of exploiting them. That's a far cry from Microsoft or even 'linux-friendly' software companies like Oracle. They've found (even more) ways to write software and work with the public, without giving away the shop.

      I'd say, on the whole, two thumbs up.
          • Actually, those contracts that say "we can change it and you're still bound by it" aren't valid.

            There are some cases they can be, but it's usually the sort of thing where you get a bank statement that lists the new regulations and you "accept by continued use". When a company says that they can change the agreement without warning though, and it's your responsibility to check, they're lying.

            One legal reform I'd *really* like is to make it illegal for companies to lie about the law. It's like a warranty where they say "You get squat - except where local law says otherwise" They shouldn't be able to say "You get squat" because in almost all countries there are lemon laws and the like. Similarly, companies shouldn't be able to tell you that you have no legal recourse when you do, or to tell you you must accept bizarre terms when those terms aren't enforceable.

            BitKeeper seems quite honest, if they don't resort to this kind of trickery.
  • by reaper20 (23396) on Wednesday February 06 2002, @09:11AM (#2961146) Homepage
    Methinks that it wouldn't be trivial to continue to pipe the results in a terse format as well.

    For L-K and releases a terse format is appropriate, but I think that keeping the longer ones around somewhere can help some of us newbies understand what the heck is going on in there.
  • It's high time he told the community to screw off for a bit.

    It's his friggin' hobby, after all. If people don't like the way he deals with it, maybe they ought to go work for a more personable coder on another OS, like, say, Theo De Raadt.

    Scary thought, hey?
    • by Stochi (114270) on Wednesday February 06 2002, @09:25AM (#2961203) Homepage
      personable? Theo? Good God! he's like a living godzilla spewing white hot embers of death everywhere...

      not that i don't love the OpenBSD project (i have several machines running it), but to say that Theo is personable is like saying everyone needs a porcupine to snuggle up with at night.
    • by Hard_Code (49548) on Wednesday February 06 2002, @10:08AM (#2961363)
      "It's his friggin' hobby, after all. If people don't like the way he deals with it, maybe they ought to go work for a more personable coder on another OS, like, say, Theo De Raadt."

      Um, except that NOBODY WORKS FOR LINUS! Linux isn't Linus's ball anymore to take away when he doesn't like how people are playing the game. That said, I think he's been a wonderful leader and manager, and is obviously opening up to suggestions. But it is stupid and insulting to say that people who aren't satisfied with Linus's management should just suck it and pick another OS. Linus himself would tell you that Linux is more the community's than his.
    • There's a point where a kernel development becomes a little more than a hobby. I would have to say Linus has crossed that line long ago. He may or may not recieve DIRECT monetary incentives to keep up the good work, but regardless, the line is crossed. It's now a profession. Linus is a professional Linux developer. Until he takes a professional position that does not allow him to spend as much time on kernel development, it's his profession, and as such no longer a hobby.
  • BitKeeper??? (Score:2, Insightful)

    by Anonymous Coward
    Why would somebody choose BitKeeper over Perforce? Perforce offers free licenses for Open Source software and is IMHO 1000% better and more powerful than CVS. Anybody wants to clarify what makes BitKeeper the tool of choice?
  • by 4of12 (97621) on Wednesday February 06 2002, @09:21AM (#2961185) Homepage Journal

    Now I'm confused!

    I've been using CVS [cvshome.org] for years and read with great interest the recent Linux Journal article [linuxjournal.com] about the Subversion [tigris.org] project to created a CVS replacement that is better than CVS.

    Then I see a Slashdot story [slashdot.org]about arch [regexps.com].

    Now, my FearLessLeader starts using Bitkeeper [bitkeeper.com].

    Should I move from CVS and, if so, which is best?

    • There is no need to be confused.

      If CVS works for you, and you have no complaints or issues, then don't switch.

      If you find yourself 1)wanting features, 2)overwhelmed by inadequacies, or 3)working too hard to accomplish default behavior in other systems (ex scripting what is handled automagically in others), then investigate changing.
      • > If CVS works for you, and you have no complaints or
        > issues, then don't switch.

        I really hate this kind of attitude. Along with "Use what you are most comfortable with". It kills any desire to learn and use new stuff and to impove.

        I say try it out and see if it worth switching to new CM.
    • If you're happy with CVS, stay with it at least until Subversion is finished -- svn is designed to be a replacement for CVS which fixes all the annoying oddities.

      If you're not happy with CVS, or have been wondering why CVS doesn't do some specific things, check out some of the really different alternatives (but be prepared for some differences):

      - "Aegis" supports TestFirstProgramming. In order to submit a change, you must provide a test which passes with the change, and fails to pass without the change. Furthermore, your change must not break any of the old tests. Extremely powerful for group programming, and useful for single-person programming.
      - "BitKeeper" provides an attractive GUI and powerful tools, designed by a professional community. It provides very powerful support for branches, and allows you to use all the convenience of the full version-controlled repository without having to have all your checked-in changes messing up the main repository.
      - "arch" may have a simpler interface right now, but it makes up for it with a very impressive model of distributed repositories. Like BitKeeper, you can make a local repository in order to make changes you want to see; unlike BitKeeper, that local repository is a full repository in its own right, and can be served independantly. It supports very sophisticated merging, so that you can merge your local repo with someone else who happened to start up their own local repo based on the same master repo; you can, of course, also merge with the master, and the master can choose to merge with your work.

      I am impressed with the variety of version control systems which are now coming into their own. Very nice to see.

      -Billy
  • It's interesting to note that Linus feels the ChangeLog for the 2.5.4-pre1 kernel is too detailed.

    Can it really be a bad thing to have too much information about any changes?

    • Can it really be a bad thing to have too much information about any changes?

      Yes, when the information is so detailed that you can't cut through the BS to find the meat. Some people just want a brief list to skim in order to decide if it's worth downloading or not.
  • How much time does Linus have to dedicate to all these patches that get submitted ?

    Would a seperate fork, with sections maintained by indiviudal groups be best ? 4 or 5 guys in charge of VM, 4 or 5 guys in charge of Hardware, they would only be responsible for review and merging.

    I know ill get blasted for fork speak, but sometimes its a good thing, (While youre at it optimize for the x86...lol)

    Linus is the all benevolent creator and Linux god granted, respect is due, We however are the users, the ones in need, Linux was intended to fill this need, if it reaches a point because of whatever reason, perhaps a branching, is best for it as a whole. I dont think anyone actually asked Linus if he wanted the development to consume his life (Maybe he does, I dont know, it dosent matter)

    All this is an awful lot to ask of any one man, mortal or not. Perhaps Linus would welcome this as an oppurtunity to do other things.

    I hope this will make Linus's life easier, Sometimes people continue on a path out of a feeling of obligation, does Linus do this now because, 1 He wants to, 2 He feels like he has to
    3 Nobody else has stepped up to offer a solution.
  • by leshert (40509) on Wednesday February 06 2002, @09:40AM (#2961260) Homepage
    In other news, demons all over Hell were seen lacing up their skates for the upcoming hockey match against the U.S. National team.
  • Oh no! (Score:3, Funny)

    by L3WKW4RM (228924) on Wednesday February 06 2002, @10:06AM (#2961355) Homepage
    Hopefully they don't keep the repository on the same machine that hosts their website...

    We may have /.'ed the kernel!
  • by srealm (157581) <prez@gothPLANCK.net minus physicist> on Wednesday February 06 2002, @10:14AM (#2961380) Homepage
    I must say, I *LIKE* all the detail in the changelog now. For a LONG time, I've thought the changelogs for linux have been too understated.

    'More bug fixes for PCMCIA' or 'Patches for USB'. Doesnt really tell me if theres any hope a particular problem I am experiencing with either has been fixed -- nor does it tell me why something that used to work no longer works, and how to re-enable the 'old style' code -- or where I should look for the diff to say to the author "This used to work, since this change, it doesnt anymore ... X hardware, X version, etc"

    More detail means, for example, I can see from the changelog, when the USB sleep (ie. usb does not come back online automatically when you put your computer sleep, you must either do some fancy footwork beforehand (which doesnt always work), or reboot). Its a known problem, but "More USB bugfixes" doesnt tell me its fixed, or even that that part of the code has been worked on.

    I'm sure theres many others out there who experience problems in specific parts of the code, (which are known problems), and have been frustrated by the changelog's lack of detail -- and dont want to upgrade your kernel to 2.5, or 2.4-pre's or even another stable 2.4, unless you know your problem is fixed, because what you got now works for everything ELSE, and you never know what a new kernel will break. I myself havnt started using 2.5 kernels, but I would probably start IF I could tell by the changelog, that my problem was solved there, so there was some benefit for me.
  • by Lumpish Scholar (17107) on Wednesday February 06 2002, @10:25AM (#2961436) Homepage Journal
    The Free Software movement says, "Use the software that's the most free. If you still have a choice, use the best software."

    The Open Source Software movement says, "Use the best software. That will often be Free / Open Source software."
  • by buckrogers (136562) on Wednesday February 06 2002, @10:41AM (#2961502) Homepage
    I am very thankful that Linus finally "saw the light" and started using a source code control system.

    I really like the new change logs, I have always hated the old change logs as being too uninformative. One of the really interesting things for me about a source code control system is that it preserves a lot more of the history of the source code than the tar balls do.

    It is also really cool how it branches the source for every patch and checks in the code with the users name as the one who checked it in and the body of the email as the comment. If Linus can find a way to also check in his rejected comments on a patch then that will also be very useful. It would be interesting to capture a little bit of the why instead of just the how in the kernel development process.

    To apply a patch you just have to merge the branch that contains the patch back into the main development branch, fix any conflicts, compile, fix it so it works right and then commit. :)

    And Linus will never lose another patch again, they will be saved for all time in the source tree under a seperate branch.

    Once Linux lets his inner sanctum of kernel developers all start merging approved patches into his main branch then we will see the kernel development really speed up.

    Thanks!
  • by markj02 (544487) on Wednesday February 06 2002, @10:52AM (#2961548)
    The problem with Linus getting overloaded is not a problem with SCM, it's a problem with the Linux kernel itself: too many kernel enhancements and bug fixes (apparently) require patches all over the kernel. What we really need is a more flexible way for extensions to hook into the kernel and override existing kernel functionality.

    There are lots of ways of providing such hooks. Perhaps the most compatible with the Linux kernel mindset would be something similar to Emacs-hooks: replace most kernel functions with variables holding function pointers to the actual code and provide APIs for manipulating those hooks.

  • by CondeZer0 (158969) on Wednesday February 06 2002, @10:59AM (#2961586) Homepage
    I found very interesting a document from Jack Moffitt (of xiph.org [xiph.org] fame,
    one of the main Ogg developers and one of the Icecast Core Developers [icecast.org]),
    about some problems he had with the BK license when he was using it
    for hosting Icecast:

    "A Critique of the BitKeeper License" [mit.edu]
    http://www.mit.edu/afs/athena/user/x/i/xiphmont/Pu blic/critique.html


    You might also find interesting his post on the matter to the
    "Icecast Developer Discussion List":

    http://www.xiph.org/archives/icecast-dev/0067.html [xiph.org]

    I hope that he will post here his his experience using BK
    in an Open/Free-source project...

    Best regards

    \\Uriel



    P.S.: Yea, I know I'm karma whoring, but I'm sure many people will find this interesting,
    specially in casse Jack dont post to this history latter
  • by leandrod (17766) <leandro...gfc...dutra@@@gmail...com> on Wednesday February 06 2002, @11:17AM (#2961661) Homepage Journal

    I did a superficial investigation on source control systems, and found some very interesting really free ones, like Aægis [aegis.sf.net].

    Does someone know if free alternatives to BK were considered, and if so why a semi-free one was choosen? If BK was better, specifically how it compared to Aægis and other alternatives?

  • Security? (Score:3, Interesting)

    by Quixote (154172) on Wednesday February 06 2002, @11:42AM (#2961774) Homepage Journal
    From Linus' email, mentioned above:
    Basically, I'm aiming to be able to accept patches directly from email,

    Does Linus use PGP sigs (for example) to verify the senders of these patches? I hope he does (being Linus and all that).
  • by Z4rd0Z (211373) <joseph at mammalia dot net> on Wednesday February 06 2002, @01:27PM (#2962432) Homepage
    What does it matter if Linus is using a source control system if no one else has access to it? I think that's really the whole point of using such a system, isn't it? So that multiple developers can check their code in manageably? As it stands now, everything still goes through Linus' inbox. It doesn't appear that the situation has changed very much.

    Will there be public read-only access to Linus' branch so people can keep up with the latest?

  • Bought damn time (Score:3, Interesting)

    by Anonymous Coward on Wednesday February 06 2002, @01:34PM (#2962466)
    Linus has finally moved from chaos to order. One of the major complaints about the Linux VS BSD development model (a lack of a control system) has been fixed.

    Now, to address what this means for Bitkeeper.....its death. Yes. Bitkeeper is now doomed. Why? Simple. The "keep this in the GPL family" movement will have someone clone the Bitkeeper method of software management, and a GPLed Bitkeeper clone will be created, it will catch up to Bitkeeper, pass it, and then Bitkeeper will have its oxygen cut off, and they will die.
    • I believe Linus was pretty against CVS from day one. He didn't like it at all, and wasn't a terribly huge fan of BitKeeper either. It almost seems like he is using moreso because he has been prodded in all directions regarding this.
      • Re:But surely (Score:4, Informative)

        by Paul Jakma (2677) <paul+slashdot@jakma.org> on Wednesday February 06 2002, @12:56PM (#2962267) Homepage Journal
        No,

        if you read the recent thread on l-k, it's because in private Linus has been talking for quite a while to the bitkeeper people about what he wanted from bitkeeper before he'd use it, and the bitkeeper people have gone and implemented most of it, so Linus agreed to use it for a while.
    • Wouldn't you think that, in the 10 or so years he's been maintaining the kernel, he already evaluated it? Just because there was never a press release doesn't mean he rejected CVS out of hand and has never tinkered with it in his spare time.
    • Re:But surely (Score:5, Insightful)

      by tftp (111690) on Wednesday February 06 2002, @09:27AM (#2961211) Homepage
      CVS is not as powerful as BK, and definitely not as scalable. It lacks very many key features; for example, it doesn't have native changesets, and they are essential when you work on a large project and accept lots of patches from lots of people.

      I use CVS all the time, but I know its limitations. Linus was right when he decided not to use CVS, it simply is not reliable enough. But don't blame CVS, it is a good and useful tool; but every tool has its safe zone of "recommended use", and Linux kernel is way beyond that. I say, any project above 50 KLOCs and with 100 revisions on average would be pushing the limits.

      • Re:But surely (Score:3, Insightful)


        any project above 50 KLOCs and with 100 revisions on average would be pushing the limits.

        Tell that to FreeBSD, OpenBSD, NetBSD, XFree86,
        all of which are orders of magnitude larger than the linux kernel. All of them have been using CVS for the past 8-10 years (depending on how you count things). Sure, cvs has its limitations, but the Linux kernel with its small number of developers with write access isn't pushing the limits. FreeBSD has over 250 people committing to its tree right now, for example.
        • Re:But surely (Score:3, Interesting)

          The *BSD projects seem to meet those criterion and are all using CVS.

          That is fine; but the most important problems would be absence of changesets (so you can't undo related groups of patches), and absence of tiered repositories (everyone goes to the same, single, central CVS server). It all can work, and it does work as we know, but the more code you write the more difficult the maintenance becomes. Like it or not, CVS is an old software, unchanged for years and full of kludges, and BK is one of new designs.

    • Re:Bad news (Score:5, Insightful)

      by elandal (9242) on Wednesday February 06 2002, @11:13AM (#2961644) Homepage
      How does Linus using BitKeeper make kernel development harder for those who don't have it (can't afford, won't use non-free software, whatever)?
      Linus and the maintainers will still accept patches in email, so nothing's changed except Linus now has a tool that is likely to help him keep up the extremely high productivity.

      And, using non-free software to manage the development of free software doesn't make the free software any less free. It's not like it could only be compiled by a non-free compiler.

      Maybe this means that those who write free software will next write a tool even better than BitKeeper and the world will be once more a little better place.
    • Re:Bad news (Score:5, Insightful)

      by Xzzy (111297) <sether@nosPAM.tru7h.org> on Wednesday February 06 2002, @11:30AM (#2961714) Homepage
      > It's somewhat sad that Linux,

      Why? I find it interesting.

      There's is absolutely NOTHING wrong with charging for software. If you do nothing but write software for work, you have a reasonable expectation to make a living off it. The world doesn't run off charity man, nothing is free.

      To me, the "pearl of Free Software" being version controlled by a commercial product is a grand statement.. that free software and commercial software can coexist peacefully.

      Software "should" only be free as in speech anyways. If it's simultaneously free beer that's just icing on the cake.
      • The argument that some people will use is
        to say "See? Free software isn't viable on it own. The only reason it's any good at all is that is relies on commercial software"

        Or the more subtle "Sure, Linux was okay before. But it only got good once they started using commercial software to develop it"

        It could help reinforce the stereotype of free software as "hobby" projects - "Oh sure, you can use free software tools to develop some simple CGI script or napster clone, but if you want to make a serious software project, you need to use commercial tools"

        (Not that I believe this, but that is what might be argued)
      • Either kernel additions like USB can be distributed without patching the kernel or they can't. If they require patching, it's a burden on Linux, on packagers, and on users. Whether it requires a little patching or a lot of patching doesn't make a difference.

        I have yet to see a major new device class, file system class, or other subsystem that didn't require patching. That's a problem with the Linux kernel--it simply lacks the hooks and mechanisms for doing this. And it will only get addressed if the kernel developers start making a commitment to shipping drivers and other modules separately from the main kernel, with their own version numbers and source trees. As long as people can patch easily, they are never going to add the hooks to the kernel that will let new functionality get added without patching.

    • Re:change (Score:4, Insightful)

      by mccalli (323026) on Wednesday February 06 2002, @01:03PM (#2962313) Homepage
      I don't know if it's a good thing linus is changing how he works.

      I also used to think like this. The sum extent of my source control was cp -r currrent vX.x. Source control was for wimps.

      I'm of a rather different view today. I now utterly insist on using it, even in tiny little things that I think are one-offs at the time (quite often it turns out they aren't).

      I think I can understand Linus' dislike. It sounds like you're less free, and as if the whole coding thing is suddenly less enjoyable. However, having gone through exactly the same feelings I can say that in my case it certainly isn't true that things are less enjoyable. In fact, in some ways it's easier as I can go wandering off in my own direction for a while, before hitting a dead end and backtracking safe in the knowledge that I have a defined state to fall back on should I need to.

      Personally, I'd recommend taking the plunge. Some [cvs.org] systems [rational.com] are better than others [microsoft.com], but any system use injects a bit more organisation and confidence into the process of coding.

      Cheers,
      Ian