Linus Tries Out BitKeeper
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."
Shouldn't Linus at least have tried out CVS first before moving to something exotic like Bitkeeper?
-- Ed Avis ed@membled.com
IIRC, the PPC Kernel is maintained through BitKeeper, and has been for quite some time.
------
Random, useless fact: I type in startx entirely with my left hand.
I wonder if the nice people at Ask Jeeves are going to mind having their (presumably trademarked) logo swiped for this?
Isn't BitKeeper a (gasp!) closed-source commercial software?
... TUX, Episode I: The revenge of the Borg!!
Shock! Horror! Has Linus Torvalds turned to the dark side of the code?!?!
Stay tuned for the next episode of
The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
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?
--------
Bleah! Heh heh heh... BLEAH BLEAH!!! Ha ha ha ha...
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?
I don't know if it's a good thing linus is changing how he works. If in the end it helps him become more productive, than great. If this ends up wasting tons of time and make him less productive overall, than he should tell people to take a long walk off a short bridge. Here's to hoping using source control leads to higher productivity. Not everyone works well with source control, so chances of it succeeding is 50/50.
Now I'm confused!
I've been using CVS for years and read with great interest the recent Linux Journal article about the Subversion project to created a CVS replacement that is better than CVS.
Then I see a Slashdot story about arch.
Now, my FearLessLeader starts using Bitkeeper.
Should I move from CVS and, if so, which is best?
"Provided by the management for your protection."
Can it really be a bad thing to have too much information about any changes?
Linux uses pine! Look at the selm tag!
Pine.LNX.4.31.0202051928330.2375-100000
How we know is more important than what we know.
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.
Sig went tro...aahemmm.....fishing........
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.
I am not following the lkml so I wonder when Linus changed his mind? Didnt he say that everybody should send patches to maintainers and stop bothering him?
Bitmover has thow worst of both worlds, it gives you the source but you arent allowed to modify it to remove the one thing you dont want.
I think they did it just to annoy people.
http://bitkeeper.com/Products.Comparisons.Perforce .html
Allthough this is marketing poop so it should be taken with a fine grain of salt, it might answer your question.
Never underestimate the relief of true separation of Religion and State.
In other news, demons all over Hell were seen lacing up their skates for the upcoming hockey match against the U.S. National team.
I still use it, too. That and Mozilla mail.
On the BitKeeper website, they aslo say that 2.4 (as well as 2.5) is hosted by BitKeeper.
:o) Looks like he's having fun playing with it.
Seems to me like a good idea to speed up the kernel development pace while still keeping control. And it seems to make Linus happy
-Dacmot
Subversion:
http://www.regexps.com/src/src/arch/=FAQS/subve
So soon we'll start hearing that BitKeeper doesn't scale, right?8-)
Yesterday was the time to do it right. Are we having a REVOLUTION yet?
Hopefully they don't keep the repository on the same machine that hosts their website...
/.'ed the kernel!
We may have
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.
... X hardware, X version, etc"
'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
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.
Signing up for the mailing list in order to gain access to the bitkeeper download can be a bitch.
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."
Stupid job ads, weird spam, occasional insight at
It's somewhat sad that Linux, which has often been referred to as the pearl of Free Software, will now be developed using non-free software.
One of the immediate consequences I can see from this move is that Debian users will no longer be able to participate in active (ie. more than just sending in patches) kernel development, as Debian policy states that Debian can only include Free Software. Of course, they can install the proprietary BitKeeper from an unoffical non-free apt source, but I doubt most Debian users will be willing to do this. Judging by what I've seen, several leading kernel developers, notably Ben Collins, are Debian users. A resolution must be found to this problem, even if it involves one of the bigger companies purchasing BitMover just to set the code free. In the long term, judging by the fervent vigilance of the Free Software community, I could forsee that this could be a very nice excuse for a fork of the Linux kernel which will be developed using Free Software only, such as CVS.
Of course, there's also the "laughing stock" factor. Whilst it may not be so bad for the Linux community, the Free Software community (if they can be set apart) will have less to be proud about when it comes to the kernel.
For sure, this has made kernel development somewhat less accessible to a large group of Linux users. I've always believed that revision control could help Linus, but surely the Free Software community has something at least as good as, if not better than the propretary offerings? Otherwise, we're no better off than using Microsoft SourceSafe.
Slashdotters should know better than most the difference between free beer and free speech.
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!
-- Never make a general statement.
"I'd be upset if Microsoft had it in their license, but here, it seems appropriate. "
If Microsoft promised to refund your money within 30 days if you were unsatisfied with the product you would be whining that it wasn't 45 days.
Drivers are distributed with the kernel for two reasons:
The USB drivers aren't overly entangled with the real innards of the kernel, they just happen to be shipped in the same tarball.
Your right to not believe: Americans United for Separation of Church and
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.
When I think about the orginizational movements and changes that are going on in the kernel developor I can't help but feel a similarity to the orginizational transformations within various parts of the Christian church... I mean the word catherdral which all understand as being that a small closed group are speaking and therefore are being heard well. The next step congregation (or bazaar if you prefer) is many people being opened to speaking but with no way for all of them to be heard well and so many get lost without a minister (maintainer) to listen to them, which results in people losing personal care and leaving the project. The next step which some churches have moved to is the cell model.
In this model there are many small groups (trees) within the church and everyone is part of one. These small groups are miniature churches that do all the things that a large size church does and when they get too large to incorporate everybody they split into two groups. They also come together in a larger community where the things the small groups do are brought together with common vision and direction. Under this model, all speak and all are heard. Nobody is lost and all ideas etc. can become part of the whole.
I think Linus is moving towards this whether he knows it or not. He already recommends the different trees to develop and people to become a part of a smaller network of maintainers etc. that pass on to other developers until it reaches him.
--------------------------------- Born Again Bourne Again Believer: New Life, GNU/Linux Be Free!
Whoa, this is the first time I've ever heard of Bitkeeper... I do use a lot of open-source software, and this is the first time the name Bitkeeper came up...
:)
Is it just me or does it look like they want to show once again that Linux is different from all other projects?
I mean Linus is still in charge of Linux... and now, he uses some exotic software program which now suddently everyone hears of. I wish my company made that program, that'd get me some licenses!
I found very interesting a document from Jack Moffitt (of xiph.org fame,
u blic/critique.html
l
one of the main Ogg developers and one of the Icecast Core Developers),
about some problems he had with the BK license when he was using it
for hosting Icecast:
"A Critique of the BitKeeper License"
http://www.mit.edu/afs/athena/user/x/i/xiphmont/P
You might also find interesting his post on the matter to the
"Icecast Developer Discussion List":
http://www.xiph.org/archives/icecast-dev/0067.htm
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
"When in doubt, use brute force." Ken Thompson
/* you are not expected to understand this */
Potato chips are a by-yourself food.
I did a superficial investigation on source control systems, and found some very interesting really free ones, like Aægis.
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?
Leandro Guimarães Faria Corcete DUTRA
DA, DBA, SysAdmin, Data Modeller
GNU Project, Debian GNU/Lin
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.
No not "all are heard" in a cell model. It is essentially a partitioning that makes groups more personable, more anarchic and cosy, but does not scale. Think about it: you talk about cells coming together in a larger community so all can be heard. That's fine for smaller groups, but what happens when a church grows to, say, a million or a billion in number? Linux development is more so: communication is intense and data-heavy. The model, as it is now and continues to be, is the traditional hierarchy. Linus trusts a select few, who maintain their own hierarchies. The classic hierarchy is the only structure that works for large groups that need strong direction: armies, nation-states, and yes, some churches.
No charge if you let it send your change logs back to bitkeeper for public display, and you get the source, under basically the GPL, with the one restriction that it pass the regression tests (essentailly, you have to let it send the change logs back).
OK, so that's not technically free software, but isn't that close enough?
Plato seems wrong to me today
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).
This is because Linux has a macrokernel architecture - everything's compiled into "the kernel", which is a hassle for some people, but increases execution speed.
As I understand it, WinNT uses a microkernel architecture - the kernel proper does the bare minimum it can get away with, and the rest is handled by higher-level "services", which in theory can be worked on and upgraded without disturbing the microkernel.
Actually, Linux is somewhere between these, owing to the modules system. I agree though that it would be nice if modules were so reliant of what version of the kernel you were using. I don't know about the practicalities of this.
Geeks tend to laugh at people for wearing shoes, etc. because a sports figure endorses them.
This looks vaguely remeniscent of that; does it not?
n the event that the Open Logging servers cease to function for 180 days,
BitMover has written into the license that the software shall be licensed under the GPL.
So DOS the heel out off those servers and make it gpl software!
I don't blame Linus for trying out Bitkeeper. After using Rational (formerly Atria) Clearcase for several years, and then working on a project using CVS, I can't believe that CVS is hyped the way it is. Sure, it works for small projects.
Why nothing can beat Clearcase:
1. Clearcase is integrated into the OS and the repositories are actual filesystems. I create a "config_spec" that lists all of the branches and labels that I want to see. I don't have to checkout stuff, and copy a large project into a private directory. If I want to see another developer's change to a small set of files, I just add his/her branch to my config_spec. No recopying or anything like that.
2. Clearmake. If someone else in my organization builds the same object file (from the exact same version of the source file), I don't have to rebuild it. I love typing "clearmake" of something huge that I've never built before, and it is done in no time!! If something does have to be rebuilt, builds are distributed across a dozen or so machines.
3. Real branches. When I am developing something, I make a temporary branch on all the files. If I want to be able to let someone else use my "development" branches, I just let them know what the branch name is. When it is production-ready, we just merge the development branch into the main branch. No such thing as patch files in Clearcase world.
There is a reason that Clearcase is expensive and proprietary.
That comment really is there in the old V6 source. I went looking for it.
Fascism starts when the efficiency of the government becomes more important than the rights of the people.
The whole reason we have free software is to improve the quality of all the software we use. The biggest problem of proprietary software is that there are usually tons of bugs that never get fixed. However, with free software(as in speech) those changes can be made by anyone who sees fit and perhaps send a patch to the original programmer. That's why linux was originally developed with an open-source model, because Linus wanted the feedback. Besides, Debian users will have no problems with using this commercially-_housed_ Linux. The DFSG only applies to the source code of the packages they themselves distribute. Since bitkeeper is only a tool, it has no bearing on the _freeness_ of the kernel.
Ehh short answer, whatever scratches your itch. If commercial software works, then why not use it?
DUDE!!!!
I could kiss you. If I had mod points you would have all five (even being an AC)
Off-topic MY ASS!
cheers
That said, your suggestion of using hooks will also require patches 'all over the kernel'.
You are being MICROattacked, from various angles, in a SOFT manner.
If you go to bkbits.net, it looks like the projects are stored there. That would mean if you were okay with having your changelogs stored in the open, that you woudl also get free hosting for your project.
That seems kind of wrong. Is bitkeeper just giving you free storage/band width with the open logging.
It seems more likely they are just storing the change log, but then where is the project itself?
nope, try the trick mentioned above, it makes the widener post sooooo thin... they still lenghten a bit tough.
MOD THAT UP!
Linus should read Slashdot.
Liberty in your lifetime
Sorry about the headline, I couldn't think of a short-enough one that'd fit.
BitMover also has a clause to help free software developers in the event of the company going out of business, located here (Correct me if I am wrong).
It says, '5. CONVERSION TO THE GPL
The BitKeeper Software will be made available under the terms of the GPL in the event that all Open Logging servers cease to function for a continuous period of 180 days starting on or after June 1st 2000.'
This looks to be applicable to the free-as-in-beer version only, as far as I can tell, but still, it's not exactly a big problem.
========================================
Death will come, and will have your eyes
-- Pavese
Will there be public read-only access to Linus' branch so people can keep up with the latest?
You had me at "dicks fuck assholes".
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.
Don't want to offend you, slashinux people, but you've got to get a clue some day... Second largest miracle after Windows getting popular: Linux became popular too! I honestly pity those people who got on the wrong track since the beginning and now can not get out of there.
Nobody in their right mind should even dare comparing Linux itself and it's development model to FreeBSD, and yet, the Linux crowd is God knows how many times larger... This is even more upsetting than situation with Windows - at least Windows users are not afraid to admit that Windows sucks.
By the way, Theo de Raadt is a very "personable" coder, you just don't know him.
The biggest problem is that the process of getting a clue is very long and painful if you grew up in a screwed up Linux world - BSD developers got sick and tired of such people years ago. Yes, they can be rude (occasionally) to lazy and stupid individuals who refuse to learn something new because of their religious beliefs in the tremendous power of Linux.
You've got to get out of there! For your own good! It WILL be hard in the beginning and only few of you can make it, but then you will never want to use Linux again. Ever. Then again, those who don't make it will hate all the BSDs for the rest of their lifes. Well, at least they will be welcome to the army of unfortunate stubborn Slashdot loosers who just were not meant to be smart when their parents made them.
Yack, my hands feel dirty after typing something to post in this public toilet...
To sum it up:
People, dare to break the clue barrier!
"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."
That functionality, according to Linus, is "bloat", so you won't see it.
The problem is that when you publish a device driver interface, you then need to maintain it through the major release, and maybe even the next release.
This is a huge problem in the closed-source world that Linus wants to avoid. (for example the whole point of Windows 95 was to be able to run modern Win32 programs on top of DOS and Win 3.1 drivers)
... when men were men and wrote or did not write their own device drivers?
No. It is the nature of big, monolithic programs that don't use modern abstraction facilities to require patches all over. Kernels are no different from word processors in that regard.
That said, your suggestion of using hooks will also require patches 'all over the kernel'.
No. You put in the hooks first, everywhere. Do it from 2.5.10 to 2.5.11. Afterwards, any module can hook just about any function anywhere in the kernel without patches.
Using dynamically loadable modules doesn't make Linux a microkernel, and adding hooks wouldn't either. The performance penalty would be basically zero.
I used this for a couple of years at my last job and it's an excellent product. I used to hate source control systems - especially CVS, but Bitkeeper works excellently.
What about Bugzilla? Isn't that a great tool? What about all the tools that the Mozilla project uses?
Actually, this is precisely why I use OpenBSD. Think about it. Microsoft adds all kinds of insecurity to their OS because they are afraid of losing customers and developers if they leave out "features," whereas Theo's response to such whining would be something on the order of "tough titty."
When security is a concern, having a paranoid asshole at the helm is beneficial, because he is not going to take in any crap. Honestly, though, it seems to me from reading Theo's posts he is not an asshole in a general way, he isn't just cruel to people for no reason. But he is an asshole when it counts, when it comes to making sure that code quality, security, and technical perfection are there.
A good example is the recent IP Filtering debacle. When the maintainer of the IP filtering system used by OpenBSD tried to cause licensing problems, Theo said "no way" and was not afraid to take it out completely even though he knew most people using OpenBSD were using it for firewalling and would be using the filter. But he would rather rewrite the whole thing than allow the project to be held hostage or allow bad design decisions and licensing problems into the project.
Of course people said "There he goes, again. What an asshole!" And I say they were absolutely right. Thank you , Theo, for not being afraid to be an asshole when it really counted. :)
http://www.winternet.com/~mikelr/flame67.html (field guide to flame warriors, hilarious reading) And, yeah, I think theo's probably abrasive personally, but then most highly skilled craftsmen are like that...
jebus, I don't know who is more retarded, the original fucktard or the drooling knuckledraggers who moderated the comment.
So DOS the heel out off those servers and make it gpl software!
I wonder who modded that down...
Thats actually an interesting point: the intent of their license is to free the code in the case they go out of business, but the wording leaves open the possibility that an attack could make the source code GPL.
They may wish to consider modifying their license to exempt that case. (They modify the terms so frequently its not a big deal for them) Its not far fetched to imagine a ddos attack run for a few days may cause their service provider to drop them. Combine that with a bit of DNS cache poisoning, and 180 days really isnt that long.
Anyway- the license itself seems to violate some fundamental concept: its designed to look more attractive to free software programmers, yet it encourages them to hope the company doesnt succeed.
Man, you're an annoying little fuckhole. Is it sleeting where you live? If so, please go play at skating on the cement at bus stops a lot until you accidentally fall underneath the wheels.
Thank you.
Nuff said
I like especially the new openness that's achieved with this.
;) (joke, Laugh Now!)
It's exciting to see what's being done to the kernel Right Now: ChangeSet Summaries for kernel 2.5
Before this it always seemed to be a miracle of when and how the kernel evolves and why this Linus guy is doing the releases...
quote from conclusion that sums up the essay (and told me everything I needed to know about the license/product):
Sometimes it is tempting to sacrifice our rights and freedoms for convinience, but we should not do so. There are many problems with CVS and other Free source management packages, and it would be nice to move to a more robust and more well-designed tool. We are better off to repair or fix the tools which are free, or if that is not acceptable to create new free tools that preserve the the rights and freedoms we enjoy.
I encourage BitMover to adopt the minimum requirements for freedom or openness that this community has defined, but at the same time I respect their wish to preserve the business model of their choice. At the very least I would like to see the rights the BitKeeper license does grant preserved and not subject to arbitrary revocation. I do hope that they will find some way to provide the community a truly free version of their tools and still meet their business goals.
I also encourage Free Software hackers to not use or stop using BitKeeper in their own projects. It might not be as convinient to use other tools, but in the long term we should be more concerned with preserving those rights and freedoms we currently exercise and enjoy daily. I personally have stopped using BitKeeper for all projects and have moved these projects back into CVS repositories. I hope that if you or your team is considering using or currently using BitKeeper that you will think about the implications of doing so and reconsider.
I encourage the entire community to support the efforts of Free and Open Source projects in this area. Source management is complex, and the efforts of the community to support Free and Open Source projects (CVS and Subversion are two such projects) are the best way we have to improve our development infrastructure.
source: Jack Moffitt's "A Critique of the BitKeeper License"
Use my userscript to add story images to Slashdot. There's no going back.