login
Header Space

 
 

Linux: BitBucket, A GPL'ed BitKeeper Exporter

March 5, 2003 - 12:51am
Submitted by Jeremy on March 5, 2003 - 12:51am.
Linux news

Pavel Machek recently announced a new project on the lkml called BitBucket. This project aims to provide read only access (at least for now) to a BitKeeper repository. I asked Pavel why he started this project, to which he explained, "There were way too many flamewars on l-k already, so I felt it was time to do some coding." As is usual when BitKeeper is discussed on the lkml [story], a lengthy debate followed.

When I asked Pavel what BitBucket currently does, he answered, "It can get an up-to-date copy of Linus' tree, and I hope to be able to get diff between two versions in near future." However, as noted by BitMover founder Larry McVoy [interview], Pavel's new project is not a clone of BitKeeper, so far only an attempt to export a current source tree. Regarding the subject tag of Pavel's announcement email, Larry noted, "that implies that BitBucket does what BitKeeper does and nothing could be farther from the truth.".

Complying with BitKeeper's free BKL license, Pavel noted that he does not use BitKeeper himself. Additionally, this current effort does not use BitKeeper's http interface to extract changesets as was the case with Andrea Arcangeli's earlier scripts [story]. Ben Collins also replied to Pavel's announcement, posting further helpful tools. When I asked Pavel what kind of response he got after announcing BitBucket, he replied, "Full mailbox over weekend ;-) and very nice stuff by Ben Collins." A large sampling of the lengthy discussion follows.


From: Pavel Machek
To: andrea, Linux kernel mailing list
Subject: BitBucket: GPL-ed BitKeeper clone
Date: Wed, 26 Feb 2003 21:02:12 +0100

Hi!

I've created little project for read-only (for now ;-) bitkeeper
clone. It is available at www.sf.net/projects/bitbucket (no tar balls,
just get it fresh from CVS).

Part of readme follows.

Install CSSC from http://cssc.sf.net/ (it is also available as

Debian package). You may need to apply cssc.diff.

Here you get following tools:

bcheckout_HEAD:
        extracts files from BK repository. You can get repository
        by rsync -zav --delete nl.linux.org::kernel/linux-2.5 .

bpull:
        pull new version of repository, compute differences from
        the last time and apply them to directory with *your*
        sources.

bdiff:
        compare two versions (specify versions from top-level
        s.ChangeSet)

To get a list of all changesets, do prs linux-2.5/SCCS/s.ChangeSet.

Enjoy, and help me make it usefull,
								Pavel
-- 
When do you have a heart between your knees?
[Johanka's followup: and *two* hearts?]


From: Larry McVoy Subject: Re: BitBucket: GPL-ed BitKeeper clone Date: Sat, 1 Mar 2003 07:28:20 -0800 BitKeeper is a trademark, please don't use the BitKeeper name when describing BitBucket. Thanks. -- --- Larry McVoy lm at bitmover.com http://www.bitmover.com/lm
From: Ben Collins Subject: Re: BitBucket: GPL-ed BitKeeper clone Date: Sat, 1 Mar 2003 11:02:22 -0500 On Sat, Mar 01, 2003 at 07:28:20AM -0800, Larry McVoy wrote: > BitKeeper is a trademark, please don't use the BitKeeper name when > describing BitBucket. Thanks. I think he's allowed to use the name so long as he only uses it to describe what the purpose of the tool is and recognizes in the same document who the holder of the trademark is. Just the same as someone can write an article about Windows and Microsoft, or a software product can claim that it runs under Windows or MacOS. He's allowed to say "This tool allows you to access a BitKeeper repository". -- Debian - http://www.debian.org/ Linux 1394 - http://www.linux1394.org/ Subversion - http://subversion.tigris.org/ Deqo - http://www.deqo.com/
From: Larry McVoy Subject: Re: BitBucket: GPL-ed BitKeeper clone Date: Sat, 1 Mar 2003 08:11:44 -0800 He's not allowed to say "BitBucket is a GPL-ed clone of BitKeeper" because that implies that BitBucket does what BitKeeper does and nothing could be farther from the truth. How about we not turn this into a debate? I politely requested that people not confuse the world into thinking Product A is the same as Product B, that's all I requested, it's a reasonable request, we don't need to debate it. If you feel the need to do so, go for it, but do so knowing that my silence in no way means that I agree or disagree with you. -- --- Larry McVoy lm at bitmover.com http://www.bitmover.com/lm
From: Alan Cox Subject: Re: BitBucket: GPL-ed BitKeeper clone Date: 01 Mar 2003 17:30:42 +0000 On Sat, 2003-03-01 at 16:11, Larry McVoy wrote: > He's not allowed to say "BitBucket is a GPL-ed clone of BitKeeper" > because that implies that BitBucket does what BitKeeper does and nothing > could be farther from the truth. Something is wrong, I agree with Larry. He should instead say "A tool for accessing bitkeeper repositories" or "bitbucket compatible proprietary tools are available from .. " ;)
From: Pavel Machek Subject: Re: BitBucket: GPL-ed BitKeeper clone Date: Mon, 3 Mar 2003 00:40:18 +0100 > BitKeeper is a trademark, please don't use the BitKeeper name when > describing BitBucket. Thanks. Sorry, I should have been more carefull about wording. Sourceforge page states that Goal of this project is to create version managment system compatible with BitKeeper. I hope that's okay with you. Pavel -- Horseback riding is like software... ...vgf orggre jura vgf serr.


From: Pavel Janík
Subject: Re: BitBucket: GPL-ed KitBeeper clone
Date: Sat, 01 Mar 2003 19:05:35 +0100

   From: Pavel Machek
   Date: Wed, 26 Feb 2003 21:02:12 +0100

Pavel,

   > I've created little project for read-only (for now ;-) kitbeeper
   > clone. It is available at www.sf.net/projects/bitbucket (no tar balls,
   > just get it fresh from CVS).

I think that it is waste of your valuable time to create clones of
proprietary software like KitBeeper (I do not want to infringe on Larry's
trademark) is. It is not worth the effort and in fact your work supports
using that proprietary tool. I suggest to completely remove the project.
-- 
Pavel Janík

In protocol design, perfection has been reached not when there is nothing
left to add, but when there is nothing left to take away.
                  -- RFC1925: The Twelve Networking Truths


From: Christoph Hellwig Subject: Re: BitBucket: GPL-ed KitBeeper clone Date: Sat, 1 Mar 2003 18:39:29 +0000 > I think that it is waste of your valuable time to create clones of > proprietary software like KitBeeper (I do not want to infringe on Larry's > trademark) is. It is not worth the effort and in fact your work supports > using that proprietary tool. I suggest to completely remove the project. I totally agree. We should stop developing Linux now and remove all source code from kernel.org because it's reimplementation and further development of the APIs of the propritary "UNIX" operating system is just a waste of time.
From: Pavel Janík Subject: Re: BitBucket: GPL-ed KitBeeper clone Date: Sat, 01 Mar 2003 23:43:23 +0100 From: Christoph Hellwig Date: Sat, 1 Mar 2003 18:39:29 +0000 > I totally agree. We should stop developing Linux now and remove all > source code from kernel.org because it's reimplementation and further > development of the APIs of the propritary "UNIX" operating system is > just a waste of time. You misunderstood my reply. We do have many source control management software around. Instead of developing something to be able to work with proprietary systems, we should concentrate on adding missing pieces to existing software and trying to convince people to not use proprietary systems because of their freedom. E.g. Linus and other people exercising "free" KitBeeper license now can not develop SCM software even if they want to. I think this is really bad for their freedom. And what will be the next thing? -- Pavel Janík I wouldn't like to have something like fetchmail for the kernel configuration. -- Martin Dalecki in LKML about CML2
From: Christoph Hellwig Subject: Re: BitBucket: GPL-ed KitBeeper clone Date: Sun, 2 Mar 2003 09:11:30 +0000 > You misunderstood my reply. We do have many source control management > software around. Instead of developing something to be able to work with > proprietary systems, we should concentrate on adding missing pieces to > existing software Well, that's the same argument as we don't need UNIX we have DOS. But anyway, don't you think Pavel is free to develop whatever free software he likes to develop instead of following you political agenda?
From: John Bradford Subject: Re: BitBucket: GPL-ed KitBeeper clone Date: Sun, 2 Mar 2003 09:30:00 +0000 (GMT) > But anyway, don't you think Pavel is free to develop whatever free > software he likes to develop instead of following you political > agenda? What is the goal of the BitBucket project, though? To develop a version control system, or to annoy Larry? I haven't seen a single post to the list saying, "If we were designing a version control system dedicated to the Linux kernel, what would you like to see in it?". Before I started work on my bug database, I spent a week or so discussing it on the list with people. Why doesn't somebody start working on a dedicated kernel version control system? John.
From: Pavel Machek Subject: Re: BitBucket: GPL-ed KitBeeper clone Date: Mon, 3 Mar 2003 13:39:07 +0100 Hi! > > But anyway, don't you think Pavel is free to develop whatever free > > software he likes to develop instead of following you political > > agenda? > > What is the goal of the BitBucket project, though? > > To develop a version control system, or to annoy Larry? To be able to access kernel version history without touching bk. Annoying Larry is just a side effect, altrough I agree selection of project name was "interesting" ;-). > I haven't seen a single post to the list saying, "If we were designing > a version control system dedicated to the Linux kernel, what would you > like to see in it?". Before I started work on my bug database, I > spent a week or so discussing it on the list with people. Apparently Linus, DaveM and Larry did just this, 2 years ago and offline. bk is result of that discussion. > Why doesn't somebody start working on a dedicated kernel version > control system? That's way harder than accessing kernel version history. I do not have time for *that*. Pavel -- Horseback riding is like software... ...vgf orggre jura vgf serr.
From: Alan Cox Subject: Re: BitBucket: GPL-ed KitBeeper clone Date: 03 Mar 2003 14:12:55 +0000 On Sun, 2003-03-02 at 09:30, John Bradford wrote: > I haven't seen a single post to the list saying, "If we were designing > a version control system dedicated to the Linux kernel, what would you > like to see in it?". Before I started work on my bug database, I > spent a week or so discussing it on the list with people. Larry spent a lot of time talking to people directly about such things.


From: Ben Collins
Subject: Re: BitBucket: GPL-ed BitKeeper clone
Date: Sun, 2 Mar 2003 00:04:20 -0500

On Wed, Feb 26, 2003 at 09:02:12PM +0100, Pavel Machek wrote:
> Hi!
> 
> I've created little project for read-only (for now ;-) bitkeeper
> clone. It is available at www.sf.net/projects/bitbucket (no tar balls,
> just get it fresh from CVS).

In case it may be of some help, here's a script that is the result of my
own reverse engineering of the bitkeeper SCCS files. It can output a
diff, almost exactly the same as BitKeeper's gnupatch output from a
BitKeeper repo.

[bitsubversion.pl]

-- 
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
Deqo       - http://www.deqo.com/


From: Ben Collins Subject: Re: BitBucket: GPL-ed BitKeeper clone Date: Sun, 2 Mar 2003 00:10:10 -0500 On Sun, Mar 02, 2003 at 12:04:20AM -0500, Ben Collins wrote: > On Wed, Feb 26, 2003 at 09:02:12PM +0100, Pavel Machek wrote: > > Hi! > > > > I've created little project for read-only (for now ;-) bitkeeper > > clone. It is available at www.sf.net/projects/bitbucket (no tar balls, > > just get it fresh from CVS). > > In case it may be of some help, here's a script that is the result of my > own reverse engineering of the bitkeeper SCCS files. It can output a > diff, almost exactly the same as BitKeeper's gnupatch output from a > BitKeeper repo. Might aswell supply my hacked sccsdiff script aswell. [sccsdiff] -- Debian - http://www.debian.org/ Linux 1394 - http://www.linux1394.org/ Subversion - http://subversion.tigris.org/ Deqo - http://www.deqo.com/
From: Pavel Machek Subject: Re: BitBucket: GPL-ed BitKeeper clone Date: Mon, 3 Mar 2003 00:53:18 +0100 Hi! > > > I've created little project for read-only (for now ;-) bitkeeper > > > clone. It is available at www.sf.net/projects/bitbucket (no tar balls, > > > just get it fresh from CVS). > > > > In case it may be of some help, here's a script that is the result of my > > own reverse engineering of the bitkeeper SCCS files. It can output a > > diff, almost exactly the same as BitKeeper's gnupatch output from a > > BitKeeper repo. > > Might aswell supply my hacked sccsdiff script aswell. There's a problem with this: it changes CSSC, and its GNU (read: needs copyright assignment to apply changes). I can't really push your changes to CSSC :-(. [What I can do is add .diff file into bitbucket...] Pavel -- When do you have a heart between your knees? [Johanka's followup: and *two* hearts?]
From: Ben Collins Subject: Re: BitBucket: GPL-ed BitKeeper clone Date: Sun, 2 Mar 2003 19:53:59 -0500 On Mon, Mar 03, 2003 at 12:53:18AM +0100, Pavel Machek wrote: > Hi! > > > > > I've created little project for read-only (for now ;-) bitkeeper > > > > clone. It is available at www.sf.net/projects/bitbucket (no tar balls, > > > > just get it fresh from CVS). > > > > > > In case it may be of some help, here's a script that is the result of my > > > own reverse engineering of the bitkeeper SCCS files. It can output a > > > diff, almost exactly the same as BitKeeper's gnupatch output from a > > > BitKeeper repo. > > > > Might aswell supply my hacked sccsdiff script aswell. > > There's a problem with this: it changes CSSC, and its GNU (read: needs > copyright assignment to apply changes). I can't really push your > changes to CSSC :-(. [What I can do is add .diff file into > bitbucket...] I'm putting my changes to CSSC into the public domain. The FSF can do whatever it wants. -- Debian - http://www.debian.org/ Linux 1394 - http://www.linux1394.org/ Subversion - http://subversion.tigris.org/ Deqo - http://www.deqo.com/


From: Adam J. Richter
Subject: Re: BitBucket: GPL-ed KitBeeper clone
Date: Sat, 1 Mar 2003 16:11:55 -0800

Pavel Machek wrote:
> I've created little project for read-only (for now ;-) kitbeeper
> clone. It is available at www.sf.net/projects/bitbucket (no tar balls,
> just get it fresh from CVS).

	Thank you for taking some initiative and improving this
situation by constructive means.  You are an example to us all,
as is Andrea Arcangeli with his openbkweb project, which you
will probably want to examine and perhaps integrate
(ftp://ftp.kernel.org/pub/linux/kernel/people/andrea/openbkweb).

	bitbucket is about 350 lines of shell scripts, documentation
and diffs, the most interesting file of which is FORMAT, which
documents some reverse engineering efforts on bitkeeper internal file
formats.  bitkbucket currently uses rsync to update data from the
repository.  openbkweb is 500+ lines of python that implements enough
of the bitkeeper network protocol to do downloads, although perhaps in
inefficiently.  That sounds like some functionality that you might be
interested in integrating.

	I think the suggestion made by Pavel Janik that it would
be better to work on adding BitKeeper-like functionality to existing
free software packages is a bit misdirected.  BitKeeper uses SCCS
format, and we have a GPL'ed SCCS clone ("cssc"), so you are
adding functionality to existing free software version control
code anyhow.

	However, I would like to turn Pavel Janik's point in
what I think might be a more constructive direction.

	Aegis, BitKeeper and probably other configuration management
tools that use sccs or rcs basically share a common type of lower
layer.  This lower layer converts a file-based revision control system
such as sccs to an "uber-cvs", as someone called it in a slashdot
discussion, that can:

	    1. process a transaction against a group of files atomically,
	    2. associate a comment with such a transaction rather than
	       with just one file,
	    3. represent symbolic links, file protections
            4. represent file renames (and perhaps copies?)

	You might want to keep in the back of your mind the
possibility of someday splitting off this lower level into a separate
software package that programs like your bitkeeper clone, aegis could
use in common.  If the interface to this lower level took cvs
commands, then it could probably replace cvs, although the repository
would probably be incompatible since the meaning of things like
checking in multiple files together with a single comment would be
different, and there would be other kinds of changes to represent
beyond what cvs currently does.  Using a repository format that is
compatible with another system (for example bitkeeper or aegis) would
make such a tool more useful, and if such a tool makes it easier for
people to migrate from a prorprietary system to a free one, that's
even better, so your starting with bitkeeper's format seems like an
excellent choice to me.

	Thanks again for starting this project.  I will at least
try to be a user of it.

Adam J. Richter     __     ______________   575 Oroville Road
[email blocked]         /                  Milpitas, California 95035
+1 408 309-6081         | g g d r a s i l   United States of America
                         "Free Software For The Rest Of Us."


From: Arador Subject: Re: BitBucket: GPL-ed KitBeeper clone Date: Sun, 2 Mar 2003 01:49:15 +0100 On Sat, 1 Mar 2003 16:11:55 -0800 "Adam J. Richter" wrote: (Just a very personal suggestion) Why to waste time trying to clone a tool such as bitkeeper? Why not to support things like subversion? Diego Calleja
From: Alan Cox Subject: Re: BitBucket: GPL-ed KitBeeper clone Date: 02 Mar 2003 02:15:36 +0000 On Sun, 2003-03-02 at 00:49, Arador wrote: > On Sat, 1 Mar 2003 16:11:55 -0800 > "Adam J. Richter" wrote: > > (Just a very personal suggestion) > Why to waste time trying to clone a > tool such as bitkeeper? Why not to support things like subversion? Because the repositories people need to read are in BK format, for better or worse. It doesn't ultimately matter if you use it as an input filter for CVS, subversion or no VCS at all.
From: Jeff Garzik Subject: Re: BitBucket: GPL-ed KitBeeper clone Date: Sat, 01 Mar 2003 20:19:52 -0500 Alan Cox wrote: > On Sun, 2003-03-02 at 00:49, Arador wrote: > >>On Sat, 1 Mar 2003 16:11:55 -0800 >>"Adam J. Richter" wrote: >> >>(Just a very personal suggestion) >>Why to waste time trying to clone a >>tool such as bitkeeper? Why not to support things like subversion? > > > Because the repositories people need to read are in BK format, for better > or worse. It doesn't ultimately matter if you use it as an input filter > for CVS, subversion or no VCS at all. "BK format"? Not really. Patches have been posted (to lkml, even) to GNU CSSC which allow it to read SCCS files BK reads and writes. Since that already exists, a full BitKeeper clone is IMO a bit silly, because it draws users and programmers away from projects that could potentially _replace_ BitKeeper. Jeff
From: Pavel Machek Subject: Re: BitBucket: GPL-ed KitBeeper clone Date: Mon, 3 Mar 2003 01:10:32 +0100 Hi! > >>(Just a very personal suggestion) > >>Why to waste time trying to clone a > >>tool such as bitkeeper? Why not to support things like subversion? > > > > > >Because the repositories people need to read are in BK format, for better > >or worse. It doesn't ultimately matter if you use it as an input filter > >for CVS, subversion or no VCS at all. > > "BK format"? Not really. Patches have been posted (to lkml, even) to > GNU CSSC which allow it to read SCCS files BK reads and writes. > > Since that already exists, a full BitKeeper clone is IMO a bit silly, > because it draws users and programmers away from projects that could > potentially _replace_ BitKeeper. Read-only access to the bk repositories is the first goal. Then, I'll either add write support (unlikely) or feed it into some existing version control system to work with that. I'm still not sure what's the best. [bk's on-disk format is quite reasonable; it might be okay to reuse that.] Pavel -- When do you have a heart between your knees? [Johanka's followup: and *two* hearts?]
From: Andrea Arcangeli Subject: Re: BitBucket: GPL-ed *notrademarkhere* clone Date: Sun, 2 Mar 2003 02:40:39 +0100 On Sat, Mar 01, 2003 at 08:19:52PM -0500, Jeff Garzik wrote: > Alan Cox wrote: > >On Sun, 2003-03-02 at 00:49, Arador wrote: > > > >>On Sat, 1 Mar 2003 16:11:55 -0800 > >>"Adam J. Richter" wrote: > >> > >>(Just a very personal suggestion) > >>Why to waste time trying to clone a > >>tool such as *notrademarkhere*? Why not to support things like subversion? > > > > > >Because the repositories people need to read are in BK format, for better > >or worse. It doesn't ultimately matter if you use it as an input filter > >for CVS, subversion or no VCS at all. > > "BK format"? Not really. Patches have been posted (to lkml, even) to > GNU CSSC which allow it to read SCCS files BK reads and writes. you never tried what you're talking about. there's no way to make any use of the SCCS tree from Rik's website with only the patched CSSC. The whole point of bitbucket is to find a way to use CSSC on that tree. And the longer Larry takes to export the whole data in an open format (CVS, subversion or whatever), the more progress it will be accomplished in getting the data out of the only service we have right now (Rik's server). Sure, CSSC is a foundamental piece to extract the data out of the single files, but CSSC alone is useless. CSSC only allows you to work on a single file, you lose the whole view of the tree and in turn it is completely unusable for doing anything useful like watching changesets, or checking out a branch or whatever else useful thing. As Pavel found _all_ the info we are interested about is in the SCCS/s.ChangeSet file and that has nothing to do with CSSC or SCCS. > > Since that already exists, a full BitKeeper clone is IMO a bit silly, > because it draws users and programmers away from projects that could > potentially _replace_ BitKeeper. Jeff, please uninstall *notrademarkhere* from your harddisk, install the patched CSSC instead (like I just did), rsync Rik's SCCS tree on your harddisk (like I just did), and then send me via email the diff of the last Changeset that Linus applied to his tree with author, date, comments etc... If you can do that, you're completely right and at least personally I will agree 100% with you, again: iff you can. Andrea
From: Jeff Garzik Subject: Re: BitBucket: GPL-ed *notrademarkhere* clone Date: Sat, 01 Mar 2003 20:45:08 -0500 Andrea Arcangeli wrote: > Jeff, please uninstall *notrademarkhere* from your harddisk, install the > patched CSSC instead (like I just did), rsync Rik's SCCS tree on your > harddisk (like I just did), and then send me via email the diff of the > last Changeset that Linus applied to his tree with author, date, > comments etc... If you can do that, you're completely right and at > least personally I will agree 100% with you, again: iff you can. You're missing the point: A BK exporter is useful. A BK clone is not. If Pavel is _not_ attempting to clone BK, then I retract my arguments. :) Jeff
From: Pavel Machek Subject: Re: BitBucket: GPL-ed *notrademarkhere* clone Date: Mon, 3 Mar 2003 01:13:33 +0100 Hi! > >Jeff, please uninstall *notrademarkhere* from your harddisk, install the > >patched CSSC instead (like I just did), rsync Rik's SCCS tree on your > >harddisk (like I just did), and then send me via email the diff of the > >last Changeset that Linus applied to his tree with author, date, > >comments etc... If you can do that, you're completely right and at > >least personally I will agree 100% with you, again: iff you can. > > > You're missing the point: > > A BK exporter is useful. A BK clone is not. I meant exporter. Pavel -- When do you have a heart between your knees? [Johanka's followup: and *two* hearts?]


Related Links:

Kick ass

March 5, 2003 - 11:36am
Anonymous

This is great news, and great coverage Jeremy.

People using GNU/Linux as a marketing tool for non-Free software piss
me off. BitKeeper going out of business is no loss to the world, Pavel
Machek releasing BitBucket is of benefit to everyone. Good work Pavel.

Ciaran O'Riordan

March 5, 2003 - 12:24pm
Anonymous

Waste of lkml bandwidth

March 5, 2003 - 4:09pm

The sooner Larry McVoy comes up with a CVS-BitKeeper gateway, the happier everyone will be.

I'm a big enough fan of the GPL to be a user of Linux rather than *BSD, but Larry McVoy is not a villian for creating beautiful new tools and wanting to make a living from their invention. Richard Stallman's GPL is a brilliant defense against parasites (a la Microsoft's past use of BSD code), but rms has never given a thought as to how innovators should be recompensed since the Internet made his business model obsolete:

  1. Write code.
  • ???
  • Profit!
  • The "???" used to be "Sell tapes," now it isn't anything at all. It's our job to figure out what that should be.

    To continue, if I was Larry McVoy, not only would I get that CVS gateway up, I would also patent the living hell out of BitKeeper, then distribute BK under the proviso that you can either pay to use it, or only use it to develop software under a license compatible with the GPL v. 2. (I.e., the modified BSD, Perl Artistic License, LGPL, &c. ) The point of free software is not to get into a dick-size war ("Oh, yeah, well my code's freer than yours!"), it's to share code and programs with those who share with us.

    old question with an old answer

    March 5, 2003 - 10:40pm
    Anonymous

    As Tom Stanco says of proprietary software developers:
    "they are not our enemies, more like our misguided friends"

    The "???" of you profit equation can be filled by providing support
    (like RedHat), custom extensions (like codesourcery), proprietary
    licenses of the same code (like MySQL), physical distribution
    (linux emporium, copyleft.nz), related merchandise (copyleft) etc.

    What happens when multiple projects begin to depend on BitKeeper?
    Nothing of note.
    What happens when Larry makes a failed business venture and needs
    to rake in some capital to keep his business afloat?
    Larry then has the option of screwing everyone.

    Demanding Free software is about not handing control of your
    projects/business over to others.

    I'm not saying it's easy to make a Free software company work, but
    then again, it's not easy to make any software company work right
    now. Whether a license can make a business profitable is beside
    the point though, creating a "software industry" is a means not an
    end. Do we want the means under the offered conditions?

    I think the BitKeeper(tm) users need to do more thinking than Larry
    does.

    Larry: "hand over some freedom, and if you want to use the stable
    version, hand over some money too (except you Linus)"

    Linus said "ok", then some of the other kids put their fingers in
    the fire too. Now Pavel is standing up and offering a hand to
    others who value their freedom.

    I used to think that making occasional exceptions was being
    "practical", but as the years have gone by I've seen Free software
    weather all the threats and slowly it overtakes (or outlives) it's
    enemies.

    If "OpenSource" was the name of the game ten years ago, OpenSource
    wouldn't exist today.

    Just my thoughts (probably too many of my thoughts but I don't feel
    like going back over this mail *again* to trim it down ;)

    Ciaran O'Riordan

    the service economy bombed 2 years ago

    March 6, 2003 - 2:44am
    Anonymous

    If Larry wasn't selling licenses, he would be living wit 4 other guys in a cramped Sili Valley house and flipping burgers.

    RedHat barely makes profits when they have them. None of the other businesses you mentioned are exactly rolling in it.

    The 90s are over and your service economy went with them.

    Free Software? YES!

    March 6, 2003 - 7:22am
    Anonymous

    If Larry wasn't selling licenses, he would be living wit 4 other guys in a cramped Sili Valley house and flipping burgers.
    Oh, so are a time traveller? It must be because it`s the only way of knowing it.

    The 90s are over and your service economy went with them.
    Maybe you don`t realised but even our so much loved enemy Microsoft goes into the direction "software as a service". And why? because software IS a service! Software is ALWAYS imperfect so software lives and evolves, it has to be maintained and updated.
    Even now the biggest part of the SW-pie isn`t the "SW as product" (i.e. the one you get in the shop in a well designed box :-), it is the in-house development.

    I KNOW that every software company can find a way to earn money without enslaving it`s customers (think of Trolltech, Cygwin, Ximian,...). There is (almost) always a working way for developing and selling Free SW, you only have to find it! If people wouldn`t think of software as a product things would be much better. It would force SW companys to produce SW of higher quality (trought higher market pressure).
    And don't forget that companies have also social responsibility (many/most companies forget that)

    But I also have to say that there is place for proprietary software (but not so much ;-)

    Service vs. subscription

    March 6, 2003 - 11:01am
    Anonymous
          Maybe you don`t realised but even our so much
          loved enemy Microsoft goes into the direction
          "software as a service".

    Somehow to me it looks more like Microsoft is going into the direction "software is a magazine".

    With service, you pay for service. Microsoft lets you pay for the software. The serive comes on top of it.

    That there may be a way is no

    March 6, 2003 - 12:54pm
    Anonymous

    That there may be a way is not interesting nor that significant. Simple fact is, those companies are exceptions, not the rule, to software development companies.

    To expect a person or any other self-interested entity to give up so much of its strategic advantage for the betterment of society is simply an idealistic wet dream and a game theoretical gutter.

    bad examples

    March 7, 2003 - 12:39pm
    Anonymous

    Talk about shooting yourself in the foot! Trolltech doesn't make money by giving away QT for KDE development, they make money by selling commercial licenses for Windows (aka 'enslaving'). Ximian and cygwin aren't profitable whatsoever.

    Face it - BitKeeper wouldn't have been written if there wasn't the financial incentive driving it. Communism (oops, Open Source) produced RCS and CVS and it was "good enough". Capitalism (oops, Closed Source) can find a better solution (perforce, BitKeeper, Visual Source Safe... ok bad example :).

    posters on crack

    March 6, 2003 - 12:30pm
    What happens when multiple projects begin to depend on BitKeeper?
    Nothing of note.
    What happens when Larry makes a failed business venture and needs
    to rake in some capital to keep his business afloat?
    Larry then has the option of screwing everyone.

    Are you saying the BK license can be changed to steal the copyright from any project managed by BK, or that McVoy can withdraw BK's free use and Linus has to go to CVS/Subversion/Arch/CSSC, at which point, without his crutches, he will die? Clarify, please.

    cracks in the posters

    March 6, 2003 - 6:48pm

    > that McVoy can withdraw BK's free use and Linus has to go to
    > CVS/Subversion/Arch/CSSC

    First off, he'll never revoke Linus's license, Linus is one of
    the best marketing tools available, but Linus isn't the only
    kernel hacker. It is easier when everyone uses the same tools,
    right now any hacker who can't get/afford a BK license has to
    use the bleeding edge development version.

    This is an idea that Larry had to encourage testing of the dev
    version. Did he not think that Free software gets tested well
    enough? why take up kernel hackers time testing his software
    when they could be working on the kernel? They don't have to
    submit bug reports but if a hacker finds the latest version to
    be too buggy she can't go back to a more stable version. These
    kind of restrictions are of no benefit to the Linux project.

    > without his [BK] crutches, he will die?

    No one will die but the time invested in learning the tools will get
    lost, the hackers may have to move to another tool, a decision on
    which one to use will take up more time.

    It boils down to the hackers giving up a certain amount of control,
    this may never harm them, or maybe it will.

    There is also the issue of setting a precendent to handing over
    control.

    Larry can change the licenses at any time, *he* decides what the
    hackers can do with the predominant source-managment software. He'll
    never screw Linus, Linus is a valuable asset, but he could stop
    releasing the zero-cost version, he could put in an Ad-pop-up
    "feature", he could be gathering personal information (how can you
    say he isn't when you can't see the source?)...

    We have an amazing thing, this Free operating system shouldn't exist.
    The fact that it does is pretty darn special. We have to realise
    *why* this system exists, if we don't value Freedom we stand to lose
    it.

    Ciaran O'Riordan

    cricks in the testers

    March 7, 2003 - 1:35pm

    First off, he'll never revoke Linus's license, Linus is one of the best marketing tools available, but Linus isn't the only kernel hacker.

    BK would be useless to Linus unless a lot of other people use it, too. Note how Linus thinks BK allows other kernel hackers to "own" parts of the kernel: Linus is no longer the single point of failure. LM thinks he may win a lot of non-Linux, commercial marketshare by keeping BK "out there." Good on him.

    but he could stop releasing the zero-cost version, he could put in an Ad-pop-up "feature", he could be gathering personal information (how can you say he isn't when you can't see the source?)...

    Yes, well, advertising companies pay millions for info on the habits of 50-60 geeks, true. <sigh> They say ignorance breeds paranoia: you aren't giving a reason not to trust LM, you're searching for one. I think LM has a vested interest in Linux and Free/OSS.

    We have an amazing thing, this Free operating system shouldn't exist. The fact that it does is pretty darn special. We have to realise *why* this system exists, if we don't value Freedom we stand to lose it.

    You stand to lose it by penalizing anyone who runs commercial software on Linux/*BSD, or tries to develop it there. Free software will never cover every computing case. Someone will always need a special solution. Ascribing all sorts of made-up, dark motives to people like LM won't help anyone.

    The first pass of the BK to C

    March 6, 2003 - 12:40pm
    Anonymous

    The first pass of the BK to CVS gateway is up, try this:

    mkdir cvs2bk
    cd cvs2bk
    cvs -d:pserver:anonymous@kernel.bkbits.net:/home/cvs co linux-2.5/ChangeSet
    cd linux-2.5
    cvs log ChangeSet | more

    It's a nice chunk of engineering done by Wayne Scott, a BitMover engineer who came to us from Intel's processor group. The cool part is that he finds the longest possible path through the BitKeeper graph which in the case of the 18,000+ changeset kernel tree is 8100 changesets. And he preserves all of the data and comments that were in the BK tree.

    There are some bugs in that conversion which is why we haven't announced it yet, we're working on, it takes time. The BK to CVS conversion of the Linux history takes 6.5 hours on a dual 1.6Ghz AMD box.

    Once we have this working, we'll have a real time CVS mirror of Linus' BK tree, probably hosted by kernel.org so that nobody can whine at us that we own the data and we'll take it away.

    As for Pavel & Crew, we wish them the best of luck. I've probably been too paranoid about this, he's going to find out that handling all the corner cases isn't much fun. I told the Subversion guys it would take them 3 years to have anything that would come close the replacing CVS, they laughed, 3 years later Greg Stein (the director in charge) called me up to graciously say "you were right". Copying BK is harder than creating Subversion, Pavel won't believe that now, he'll just keep hacking away at it and I expect that in 3 or 4 years I'll get mail from him saying I was right, assuming he has as much grace as Greg.

    I'm not real worried that Pavel and crew can keep up with a dozen engineers with a 6 year lead. As the marketing guys say, we should be worried when people are not copying us.

    --lm

    indeed, now you realize the error?

    March 6, 2003 - 9:49pm
    Anonymous

    So now that you see it like this, you realize how useless your outburst on lkml was. You just made some waves for no reason, where silence would have been golden.

    You do know how strong is desire for free software within Linux community? If you decide to support Linux development, and yet expect everyone to be kewl with your proprietary software, then you're crazy. But if you do expect this reaction, then why act annoyed, surprised, hurt (not saying you are any of those, just that your act looks like it)?

    I don't understand you LM. Are you for or against free software? I just don't get it. BTW, I'm not any of the above posters, so don't blame anyone here for these words.

    Wow!

    March 6, 2003 - 9:58pm

    Impressive...

    Here's the script output from running Larry's suggested cvs commands. Be warned, though, it's nearly 5MB of data! (If you have a slow connection, you can download this compressed copy, or simply execute the commands yourself... The pipe to more will keep it from overwhelming you.)

    He quit before selling tapes

    March 7, 2003 - 9:55am
    Anonymous

    Nah, he quit MIT in January 1984 and released Emacs in 1985.
    (info confirmed by reading the link you provided :p )

    To bridge the ecnomic gap he updated manuals for Lisp Machines Inc.,
    the rival to the company that hired away most of his fellow hackers.
    (I don't feel like checking, but I think they gave their source away
    freely)

    When he quit, MIT asked if he'd like to continue to use his office,
    which he did: He lived there for twelve years, he was even registered
    to vote there.

    Amazing man, great book.
    Ciaran O'Riordan

    It seems that there would be

    March 5, 2003 - 12:43pm
    Anonymous

    It seems that there would be no way to get rid of BitKeeper up to now. I think that BitKeeper should be used till an open source program/solution that is equal to/better than BitKeeper is available, which should be developed while BitKeeper is still used.
    Once we got it, BitKeeper is no more a problem.

    flying pigs

    March 5, 2003 - 6:41pm
    Anonymous

    BitKeeper should be used till an open source program/solution that is equal to/better than BitKeeper is available

    In other words, bitkeeper is here to stay.

    rocket pigs

    March 5, 2003 - 10:57pm
    Anonymous

    1984: One day we will have a completely Free operating system and there
    will be a swarm of flying pigs

    1985: One day we will have a Free multi-language compiler, and a pig
    will fly

    1986: One day we will have a Free C library, and a pig will fly

    1987: One day we will have Free Development tools, and a pig will fly

    1991: One day we will have a Free Unix-kernel like kernel, and a pig will fly

    1998: One day we will have a Free point-and-click interface, and a pig will fly

    ...

    THEY'RE SURROUNDING YOU!

    (he who says it cannot be done, should not interrupt he who is doing it)

    Ciaran O'Riordan
    (who is going to sleep now)

    "Die BitKeeper, die"

    March 6, 2003 - 12:04am
    Anonymous

    Here's the news, fellas..

    BitKeeper was created to take the load off Linus. It took _years_ to develop and get right. If Pavel reverse-engineers enough of BK to be able to reproduce it's "weave" (a DAG), then BitKeeper will get taken away from kernel developers.

    This is not speculation. This is the hard truth.

    Pavel can take Linux kernel back to the nineties, with Linus dropping patches all over the place, and development slows to a crawl again.

    Argue about the evil of closed source all you want: BitKeeper is (a) useful, and (b) available to us for free out of kindness. If some kernel hackers abuse that trust, then all kernel hackers will suffer. The entire Linux project will suffer.

    No thanks.

    Jeff

    Kindness

    March 6, 2003 - 1:37am
    Anonymous

    Yeah, right. How many lawsuits must McVoy threaten before you say it's not kindness that motivates the man?

    Your own post belies the idea. You say that "Bitkeeper will get taken away" if Pavel does something. You use the passive voice to hide it, but McVoy is the only man who can do that. Are you saying McVoy has the power and the willingness to take away BK from us and to stop Linus from using it anymore? If so, that's not kindness. That's holding Linus and the community hostage. Yes, Linus made himself a hostage, but it's still the case.

    Kindness

    March 6, 2003 - 11:15am
    Anonymous

    You miss one important point: Even without using BitKeeper, the leading-edge Linux kernel developer is closer to that leading edge than ever before Linus started using BitKeeper.

    Linus has always worked someting like this:

    1. reveive patches
    2. maybe apply them, maybe drop them
    3. release a kernel every so many days
    4. loop 1

    Before he started using BitKeeper, people would not know if their patches would have been applied until step 3. In fact, people would not know how far their tree had diverged from Linus' tree.

    Today, everybody can see almost Real Time which patches are in Linus' tree and which are not. To avoid divergence among trees, everybody can subscribe to the bk-commits mailing list.

    I emphasize everybody here once more because this includes all the people who refuse to use BitKeeper for the usual ideological reasons. The only difference between non-BK-users and BK-users is that the former will have to wait two hours instead of seconds to see changes in Linus' tree. Still this is way way much better than many days or weeks.

    So, the way I see it, Larry McVoy and his BitKeeper have helped tremendeously in providing an up-to-date overview of the "official" Linux kernel tree, speeding up kernel development. This is a big fscking improvement.

    And now the kernel community behaves like little Oliver, asking for more.

    Evil

    March 6, 2003 - 9:20pm
    Anonymous

    There is nothing "evil" about bitkeeper. It's a program. It's actually a nice program. What is "evil" is the license that says Red Hat, IBM, etc. employees can no longer do kernel development without negotiating special licenses. And remember that not everyone working for IBM does Linux for a job. Some do it as a hobby and source code management has nothing to do with their job.

    Bull

    March 7, 2003 - 12:40am

    Those unable to use bitkeeper under it's free license are not prevented in any way from doing kernel development. They just can't use BitKeeper to do it.

    Linus still puts out regular releases like he use to pre-BK. Except that now you can track his development a lot closer either by using BK, or thanks to various people hosting standard repositories of whatever has gone into Linus' tree.

    Linus still accepts and applies patches like he use to pre-BK.

    Now what is it exactly about Linus' use of BitKeeper that STOPS other people from doing kernel development the say way they did before BK?

    Re: Evil

    March 8, 2003 - 9:55am

    Speaking of IBM, here is something that had come to my mind a while ago. We all know that the whole discussion about whether you can use BK for kernel development under the free license or not affects just that - the *free* license. Nobody would prevent you from buying a commercial BK license and then using that for development; in fact, I think that this may even be something that Larry wants to encourage through this clause.

    Now, of course, no kernel developer should have to pay for being able to participate in kernel development, but what would, for example, speak against a large company (with a large budget), like IBM, acquiring a bunch of BK licenses for kernel developers? I don't know what a commercial BK license costs, but given their budget of one milliard dollars for linux-related endevaours, I think it would be doable, and IBM certainly would not only help kernel development, but also garner quite some good karma for this.

    --
    schnee

    Cutting off your nose to spite your face

    March 7, 2003 - 9:26am
    Anonymous

    All too common in the Free Software world. It seems that frequently the desire to see all software Free overrides practical concerns about having software that works well, and sometimes this actually hurts the cause of Free Software. I'm firmly in favour of the concept of Free Software, but sometimes you need non-Free software as a stepping stone in order to be able to make Free Software a reality. Remember it took years of development on non-Free platforms for the GNU utilities to reach the point where they could be part of a full Free system using Linux.

    Subversion and arch are not yet at the point where they are Linus-compatible; until they are (and I'm sure they will be eventually), the less done to annoy Larry McVoy and give him cause to revoke all the free-beer BK licenses, the better. Even if you won't or can't use BK, the regular snapshots that are provided out of the Linux BK repository are far better than what was offered by Linus pre-BK.

    More haste, less speed?

    Linus-compatible

    March 7, 2003 - 6:35pm
    Anonymous

    As in... Linus likes it and will use it.

    CVS isn't Linus-compatible, it doesn't fit with his preferred way of working. BK wasn't Linus-compatible to begin with, but then Larry McVoy persuaded Linus to try it and report what he didn't like, then it was fixed up until Linus liked it and he started using it.

    Reverse-engineering of BK will hurt kernel development?

    March 8, 2003 - 9:47am

    If Pavel (or anyone else) reverse-engineers enough of BK, then BK won't be needed anymore for kernel development. And given Larry's increasingly bad attitude over the past year, that can only be a good thing.

    In fact, if Larry will actually go so far as saying "stop developing competing tools or I will take away the free BK altogether" (as opposed to just disallowing usage to certain groups of developers), then I think even switching back to an inferior solution would be justified. There are some things that I think are simply intolerable, and blackmailing the whole community (for nothing else it would be) would be one of those.

    Let's hope it does not get this far, and that we can instead work out a solution that works for kernel development in the long-term (whether with or without BK).

    --
    schnee

    Is it really that hard?

    March 9, 2003 - 5:51pm
    Anonymous

    The linux kernel team is composed of some of the brightest technical people in the world, yet no one can make a really good revision control system? Is writing a Kernel easier than rewriting CVS ??

    Re: Is it really that hard?

    March 9, 2003 - 8:42pm
    Anonymous

    Making relatively minor enhancements to the kernel is easier than rewriting (a better) CVS. Creating a better CVS has not until recently (relative to the beginning of Linux) been seen as such an appealing thing to have done.

    Re: Is it really that hard?

    March 9, 2003 - 9:49pm

    One of the main problems, I guess, is simply the time it takes to write a tool that can compete with BK on a technical level. One doesn't expect to be able to write a C compiler, OS kernel or desktop environment over night (or even in a few months), and I think it's not reasonable really to expect something different from a sophisticated revision control system.

    That being said, I think that some of the claims being made occasionally that in the light of the availability of BK, such a project would be doomed from the beginning and the conclusion drawn from them that it shouldn't be started in the first place are, basically, FUD, even though spreading such may not be directly intentional. I certainly do not want to accuse anyone of doing so, but given that the BK people's first interest is to protect and promote their own product, statements coming from their general direction should be taken with a grain of salt in this discussion.

    Anyhow, to sum up my personal opinion, I think that BK is quite cool on the technical side, and I can surely understand that Larry and bitmover.com want to make money with it, too, and thus restrict the terms under which it can be used freely. I have no problem with that really, either, but I think that it should be carefully evaluated if the changes in the development process this brings will really be for the better in the long run. For now, most people seem to argue that Linus is accepting more patches, doesn't drop as many anymore, that it's much easier to track his tree in realtime (and still much faster than before even when you can't or don't want to use bk yourself) and so on, but when I look back at what's happened over the course of the last year, then I can't help but notice that Larry's position on the whole issue basically went from "It's great to see bk being used for kernel development, as that's major advertising for us" to "we'll use anything from license restrictions to trademark issues and patents to make sure that nobody will interfere with our business model".

    What one should realize, maybe, is that just like noone's got a right to get to use BK for free, Larry also has no right to BK being used for kernel development. So far, it is being used (and probably will continue to be used in the foreseeable future at least) because of its technical superiority, but the goals of the kernel development community are, ultimately, to be able to develop the kernel with as little hassle as possible, and not to protect some company's business, no matter whether that company is Red Hat, IBM or bitmover. Larry seems to be relatively safe right now considering Linus' latest comments on the issue, but if I was in his position, I'd try to act in a nicer and more rational manner than he does now. Whether they pay for it or not, the kernel developers are users and thus - in a certain way - customers, and I think they should be treated as such. The mere fact that people see a need to develop other, comparable solutions, BK clones and other such things, combined with the fact that this is not limited to those who want to see alternatives simply because BK is not GPL'ed or otherwise free (as in speech), already shows that something is seriously wrong here.

    All in all, I can only really speak for myself, of course, but I assume it's safe to say that we don't want to hurt Larry's business simply for the sake of doing so, but we also expect that he doesn't hurt ours (namely, developing the kernel).

    --
    schnee (who probably shouldn't write comments about issues like this at 2:20am - I'm sorry if what I wrote seems a bit incoherent).

    BitRape

    March 5, 2005 - 4:34am
    f00fbug (not verified)

    Funny.. i was working on a KitBeeper clone called bitrape, then when looking for some doc of the Kb protocol i found this project lol..

    Comment viewing options

    Select your preferred way to display the comments and click "Save settings" to activate your changes.
    speck-geostationary