Beta

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

GNU Emacs Switches From CVS To Bazaar

timothy posted more than 4 years ago | from the surely-you-need-not-leave-emacs-to-use-bazaar dept.

GNU is Not Unix 198

kfogel writes "GNU Emacs, one of the oldest continuously developed free software projects around, has switched from CVS to Bazaar. Emacs's first recorded version-control commits date from August, 1985. Eight years later, in 1993, it moved to CVS. Sixteen years later, it is switching to Bazaar, its first time in a decentralized version control system. If this pattern holds, GNU Emacs will be in Bazaar for at least thirty-two years ..."

cancel ×

198 comments

Sorry! There are no comments related to the filter you selected.

Why 32? (5, Insightful)

hezekiah957 (1219288) | more than 4 years ago | (#30567982)

24 is plausible, too; an arithmetic not geometric progression.

Re:Why 32? (5, Funny)

Anonymous Coward | more than 4 years ago | (#30568008)

I reckon after two years they'll get bored and switch to keeping commits in directories named gnuemacs.20120415, gnuemacs.working, gnuemacs.old-dontdelete, etc.

Re:Why 32? (4, Funny)

EvanED (569694) | more than 4 years ago | (#30568020)

Is there a 'scary' mod? I don't see it in my list unfortunately.

Re:Why 32? (1)

ls671 (1122017) | more than 4 years ago | (#30568148)

> Is there a 'scary'

scary mod would be ambiguous with regards to ranking, some horror/apocalyptic movie fans might view as + while some others might view it as - ;-)

Re:Why 32? (2, Funny)

Architect_sasyr (938685) | more than 4 years ago | (#30568570)

By that token we have funny-strange and funny-hilarious. Since when did anyone on slashdot fail to be ambiguous?!

Re:Why 32? (0)

Anonymous Coward | more than 4 years ago | (#30568636)

According to the specs for various conversion tools, you can capture the CVS trunk but not the branches. So most of the emacs history could be lost in the conversion

Re:Why 32? (4, Funny)

fuzzyfuzzyfungus (1223518) | more than 4 years ago | (#30568684)

Don't be silly. This isn't some spartan text editor like vi.

Future emacs development will be hosted inside emacs, with a version control extension written in emacs lisp.

Re:Why 32? (4, Funny)

Arancaytar (966377) | more than 4 years ago | (#30569020)

spartan text editor

THIS! IS! EMACS!

Re:Why 32? (1, Funny)

Anonymous Coward | more than 4 years ago | (#30568072)

Powers of two are much more beautiful. They are appropriate for a software development project. They will also relatively reduce the need to frequently move to new version control systems, as the interval will dwarf human lifetimes as we know them after doubling only a few more times. An arithmetic progression may seem clever now, but what about 8160 years from now? Will it look so smart then? I think not.

Re:Why 32? (1, Informative)

kfogel (1041) | more than 4 years ago | (#30568086)

Ok, that's fair -- it could go either way. That's what I get for trying to be too clever!

Re:Why 32? (2, Insightful)

Kynde (324134) | more than 4 years ago | (#30569442)

24 is plausible, too; an arithmetic not geometric progression.

I'm so sorry, but you are utterly wrong.
24 would perhaps be plausible in carpentry or equestrian, or if the numbers were 7 and 14, but in this case, i.e. with software, powers of two and slashdot, there are simply two and only two possible successions to that and those are indeed the 0x20 and some-funky-number-with-cowboyneal-embedded. And that's final. Move along, move along.

Re:Why 32? (1)

selven (1556643) | more than 4 years ago | (#30569612)

But what if the powers themselves go along a geometric progression? 2^3, 2^4, 2^5.33...

first first? (5, Funny)

Tumbleweed (3706) | more than 4 years ago | (#30567990)

You'd think there'd be an emacs keystroke combo to check for duplicate words in a block of text.

Re:first first? (5, Insightful)

melikamp (631205) | more than 4 years ago | (#30568268)

(defun search-dupe-words ()
"Search for word dupes"
(interactive)
(search-forward-regexp "[^a-z]\\([a-z]+\\) \\1[^a-z]"))

(global-set-key (kbd "<f7>") 'search-dupe-words)

Re:first first? (3, Insightful)

thestuckmud (955767) | more than 4 years ago | (#30568964)

This `\<\(\w+\) \1\>' regexp matches identical word pairs using word related capabilities built into emacs' regexps (and relative to the local syntax table).

For OP: The key sequence you are looking for is:
<C-M\>s\<\(\w+\) \1\>

32 years? (0, Troll)

Anonymous Coward | more than 4 years ago | (#30568004)

Or less if the developers accept that Bazaar sucks compared to git and switch earlier.

Re:32 years? (0, Redundant)

Norsefire (1494323) | more than 4 years ago | (#30568048)

Mod parent sad but true ...

Re:32 years? (3, Insightful)

kfogel (1041) | more than 4 years ago | (#30568108)

I've used both and don't agree. Bazaar's quite good. Not that there's anything wrong with git, either. At this point in their development, I think the old rule is starting to apply: "the smaller the differences, the louder the arguments".

Re:32 years? (2)

TheLink (130905) | more than 4 years ago | (#30568146)

So far what are the technical disadvantages to using Bazaar instead of git or something else?

Re:32 years? (5, Informative)

icebraining (1313345) | more than 4 years ago | (#30568176)

Speed in repositories with very large history (> 10000 commits) and in network operations, but the difference is not large. As for features, they're pretty much tied:
http://versioncontrolblog.com/comparison/Bazaar/Git/index.html [versioncontrolblog.com]

Re:32 years? (4, Informative)

SanityInAnarchy (655584) | more than 4 years ago | (#30568480)

The difference is not large until you realize that just about anything you want to do is going to take under a second, including merges. The only place I've started to see slowdown with Git is Webkit, with 40,000 commits.

That's an important threshold. That's the difference between "I'll do it later" and instantly, almost unconsciously committing or merging. And that's good -- this is version control, you can always undo it, but you can't undo what you put off committing.

I know when I was working on a large svn project, some people put off committing (or pulling) for days because they didn't want to deal with the conflicts, branching and merging was a hassle (so, same problem), and if they made the effort to stay up-to-date (so conflicts would be small, infrequent, and manageable), it was too slow. And that was with only a few thousand revisions.

I think I just fell into this trap, though:

"the smaller the differences, the louder the arguments"

Victory #1: You're using version control!
Victory #2: You're using something distributed!

Beyond that, it's a matter of taste. I think Git is far and away the best, but the gap between git, bzr, hg, darcs, anything, is still far less than the difference between any of them and svn or cvs.

Re:32 years? (1)

TheLink (130905) | more than 4 years ago | (#30568508)

Is bazaar slower mainly because of the architecture? The rename tracking seems to be a potentially important difference (it may not bite you now, but if it bites you way later that can be more painful :) ).

Re:32 years? (4, Informative)

Dwonis (52652) | more than 4 years ago | (#30568988)

I lost data [dlitz.net] as a result of bzr not supporting history rewriting. As far as I can tell, it's still not supported [launchpad.net] .

I have never lost data that has been committed to a git repository, even though my build of git-svn occasionally segfaults on me.

Re:32 years? (1)

mysidia (191772) | more than 4 years ago | (#30568284)

Bazaar is a bit slow, but a great choice.

Git is a big mess in some ways (though still way better than using CVS), it's not better than Bazaar, too many commands, too many options, crappy windows support; Silly need for repository maintenance, ala git-gc; incomplete, unclear documentation. You can very easily shoot yourself in the foot with git, and accidentally destroy important history info (eg git-push --force), more so than any other version control system.

Mercurial is a lot closer to CVS/SVN in terminology, much easier for developers to adapt to. VCS should be simple, and it's really rather snappy.

Personally, I would say Bazaar is a fine choice for Emacs... if they should decide they need to change, they should switch to Mercurial and avoid Git like the plague it is :)

Re:32 years? (5, Informative)

SanityInAnarchy (655584) | more than 4 years ago | (#30568446)

crappy windows support

I'll give you that. Still, it does have Windows support, and all the cool kids are on unices these days -- even Macs.

too many commands, too many options,

Dude, you're a programmer. If you can't learn to use a meaningful subset and ignore the rest, you're in the wrong field.

Yes, there are a crapton of commands, but because the data model is so simple, once you get it, it's easy to understand what each command actually does just by reading its description.

Silly need for repository maintenance, ala git-gc;

Which bzr does automatically every few revisions whether you want to or not. I'm sure someone could hack a script around that if you're too lazy -- check the gc.auto config variable. In my experience, it's needed rarely enough that it's not hard to remember, and it's nice in case you screw up a repository to know that, in theory, every single commit is still there until you run 'git gc'.

incomplete, unclear documentation.

When did you last check? I found excellent documentation at git-scm.org. What's missing?

You can very easily shoot yourself in the foot with git, and accidentally destroy important history info (eg git-push --force),

You pretty much deserve what you get, there -- it's like 'rm -rf'. Any time you use --force isn't "easily", it's the fact that you didn't read the GIANT WARNING around the option. From the docs:

Usually, the command refuses to update a remote ref that is not an
                      ancestor of the local ref used to overwrite it. This flag disables the
                      check. This can cause the remote repository to lose commits; use it
                      with care.

I hate to say it, but RTFM.

Note also that this is again why 'git gc' exists. git-push may cause the remove repository to lose commits -- but not necessarily, and anything that hasn't been cleaned by 'git gc' can be recovered, likely with its entire tree intact.

And finally, assuming you're git-pushing to a remote repository that other people already have copies of, chances are someone will have that history. That's the beauty of a DVCS in the first place.

I will admit this:

Mercurial is a lot closer to CVS/SVN in terminology, much easier for developers to adapt to.

I thought so, too. I also thought that about bzr. I avoided Git for awhile, until I realized that all the projects I wanted to contribute to were on Github, so I forced myself to learn it.

I think the investment is well worth it.

VCS should be simple,

To a point. Think about it this way: As a programmer, your VCS is your most important tool. More important than your language, more important than your editor. You owe it to yourself to know it inside and out.

And as I said, the Git data model is simple -- ridiculously simple, back-of-an-envelope-from-memory simple. It's the tools that add features, and make it either harder or easier to use -- and I'd argue this is true of all good systems. Your filesystem is absurdly simple -- a hierarchy of directories (which can hold named references to other directories or files), and files (dumb streams of bytes). HTTP is incredibly simple, but use it properly (REST) and it's a powerful remote API.

Off the top of my hand, a Git feature for which I don't know a Mercurial equivalent -- git-cherry-pick. Want to rewrite history a bit? Create a new branch from sometime before the commits you want to change, then cherry-pick (point-and-click simple in gitk) the commits you want, in the order you want, ignoring the ones you don't. When you're ready, clobber master with your new branch.

I mean, quilt (hg mq) is cool and all, but how easy is it to rewrite history if you weren't in a quilt to begin with?

Re:32 years? (1)

i.of.the.storm (907783) | more than 4 years ago | (#30568520)

All of the things you said about Git are no longer true, but they may have been several years ago. For example, I've been using Git on Windows for a year and have had absolutely no problems. No Cygwin either. And you ignore the fact that git automatically does git gc if your repo gets too large and that thanks to git gc, git repos are much smaller than any other DVCS and can sometimes be smaller than an SVN checkout, which only has the tip of the repository. And um, if you're going to be doing any command with the option --force, you better know what the fuck you're doing. I will agree that if you're coming from a CVS/SVN background, git's terminology can be a bit confusing at first, but it doesn't take long to get used to it.

Re:32 years? (3, Informative)

Dwonis (52652) | more than 4 years ago | (#30569036)

Silly need for repository maintenance, ala git-gc

Git does this for you automatically.

and accidentally destroy important history info (eg git-push --force)

This is disabled in shared respositories by default, and you can run "git config receive.denyNonFastForwards true" in non-shared repositories if you somehow think you'll "accidentally" use --force even though you know better.

VCS should be simple

Git provides a very simple data structure (it's just a directed acyclic graph of commits), and a comprehensive and mature set of tools for manipulating this structure. Sure, there's a learning curve, but really it's easier to learn than, say, Ruby, and once that's done git stays out of your way and does a great job of helping you manage your changes.

Re:32 years? (-1, Flamebait)

Anonymous Coward | more than 4 years ago | (#30569376)

too many commands,

too many options,

crappy windows support

git-push --force

wahahwahah i ran rm -r --force / because coreutils has too many commands and rm has too many options and it's RMS's fault that i lost all my data

I would write a detailed rebuttal but this has already been done, so all that is left to say is go kill yourself, your a total tool and the world would be better of without you in it.

Re:32 years? (2, Interesting)

shentino (1139071) | more than 4 years ago | (#30568702)

You should see how much of a fuss it's making with the ubuntu mailing lists.

At any rate, bazaar is politically entrenched because it's the only officially supported RCS and it's backed by the corporate might of canonical.

I'm not aware of any particular merits or demerits of either system.

ObSimpsons (5, Funny)

StarDrifter (144026) | more than 4 years ago | (#30568016)

If this pattern holds, GNU Emacs will be in Bazaar for at least thirty-two years ...

Disco Stu: Did you know that disco record sales were up 400% for the year ending 1976? If these trends continue... A-y-y-y!

Re:ObSimpsons (3, Funny)

jisatsusha (755173) | more than 4 years ago | (#30568410)

Even better: http://xkcd.com/605/ [xkcd.com]

Re:ObSimpsons (1, Insightful)

Anonymous Coward | more than 4 years ago | (#30568714)

No, not better. The Simpsons statistics relates more to situations that people find themselves misusing statistics. People see a pattern repeated over a given period of time and expect it to continue indefinitely. The Simpsons humor is instructive, xkcd is just derivative and self-serving. If you understand the subject, you get to laugh at the others that don't. Simpsons invited all to come in and laugh at themselves.

Re:ObSimpsons (1)

Zontar The Mindless (9002) | more than 4 years ago | (#30569454)

Right, xkcd deliberately and maliciously aped the great and wonderful Simpsons just to annoy you to the point where you'd share that gemlike nugget of profound wisdom with us. Because anybody making a similar joke to one that happened to appear on the Simpsons must be doing so only in order to desecrate our precious bodily fluids as epitomized by the Simpsons, the font of all right and true humour!

In short, you're a tard. Kindly get over yourself, then FOAD.

Re:ObSimpsons (2, Informative)

Per Wigren (5315) | more than 4 years ago | (#30569522)

Even better: http://xkcd.com/612/ [xkcd.com]

News? (2, Funny)

TheKidWho (705796) | more than 4 years ago | (#30568034)

So some young whippersnappers decide to change things around and this is news?

Get off my lawn!

I would just like to say this (0, Flamebait)

For a Free Internet (1594621) | more than 4 years ago | (#30568036)

I have been here for five whole minutes and I have not seen one half-decent cat turd snowman pants. And that is because of Linux and Italians who eat cat turds while wearing snowman pants, in CHURCH!

Wow, what quality... (-1, Offtopic)

Anonymous Coward | more than 4 years ago | (#30568040)

"Emacs's"

Take it from someone who has an "s" at the end of their name, it's supposed to be Emacs'.

Re:Wow, what quality... (5, Informative)

EvanED (569694) | more than 4 years ago | (#30568076)

I don't know where you live, but in American English, the singular possessive of a noun ending in s can either have just ' or 's appended. See Wikipedia [wikipedia.org] . (In particular, that article makes it sound like the Chicago Manual of Style recognizes both forms as valid.)

Re:Wow, what quality... (3, Funny)

kfogel (1041) | more than 4 years ago | (#30568116)

It's a matter of long debate among grammarians, and I take other grammarians's point of view :-).

Re:Wow, what quality... (0, Flamebait)

Kynde (324134) | more than 4 years ago | (#30569468)

"Emacs's"

Take it from someone who has an "s" at the end of their name, it's supposed to be Emacs'.

Hardly, your case is far simpler, it's simply "Anonymous Coward's"

Take that from someone who actually read's both the posts and who wrote them.

Extrapolating (-1, Redundant)

Jaxoreth (208176) | more than 4 years ago | (#30568046)

Cathedral & the Bazaar? Irony? (4, Funny)

tchuladdiass (174342) | more than 4 years ago | (#30568052)

Wasn't Emacs used as an example of a "Cathedral" project in Raymond's paper?

Re:Cathedral & the Bazaar? Irony? (3, Interesting)

kfogel (1041) | more than 4 years ago | (#30568122)

I can't remember if it was in the paper offhand, but in any case Emacs development is not really very cathedral-y.

Re:Cathedral & the Bazaar? Irony? (4, Interesting)

FlyingBishop (1293238) | more than 4 years ago | (#30568406)

It used to be. It since opened up in reaction to Raymond's paper. The power of words...

Re:Cathedral & the Bazaar? Irony? (1, Informative)

Anonymous Coward | more than 4 years ago | (#30568134)

IIRC Raymond's examples for the cathedral model were primarily closed source software from big companies, particularly operating systems. Not emacs.

Re:Cathedral & the Bazaar? Irony? (1)

flydpnkrtn (114575) | more than 4 years ago | (#30568368)

Actually I thought the same thing myself when I heard about the "Cathedral and the Bazaar," but in reality it specifically compares two different free software development models. Emacs is held up as being "Cathedral"

From the Wikipedia article: [wikipedia.org]

        * The Cathedral model, in which source code is available with each software release, but code developed between releases is restricted to an exclusive group of software developers. GNU Emacs and GCC are presented as examples.
        * The Bazaar model, in which the code is developed over the Internet in view of the public. Raymond credits Linus Torvalds, leader of the Linux kernel project, as the inventor of this process. Raymond also provides anecdotal accounts of his own implementation of this model for the Fetchmail project.

(I know, bad flydnkrtn, don't cite Wikipedia... it looks accurate though)

Re:Cathedral & the Bazaar? Irony? (0)

Anonymous Coward | more than 4 years ago | (#30568394)

I can't find a copy of the original, but my memory is that it was more of a critique of GNU's management style than closed source software per se.

GCC and emacs were both given as examples of projects that forked because of you-know-who.

Re:Cathedral & the Bazaar? Irony? (1)

dbIII (701233) | more than 4 years ago | (#30568808)

Emacs has definitely been a one man band or small closed tightly controlled group effort at times in the past. I lucidly remember the time when RMS forked it away from the emacs developer to one of his students.
Personally I think the tight control is why linux succeeded and hurd has not yet done so. There's probably nothing wrong with hurd that a few thousand people putting in a bit of time couldn't fix, but the people that would be interested are not made to feel welcome.

Re:Cathedral & the Bazaar? Irony? (1)

Volguus Zildrohar (1618657) | more than 4 years ago | (#30569056)

particularly operating systems. Not emacs.

I am not getting the distinction here.

Re:Cathedral & the Bazaar? Irony? (1)

geminidomino (614729) | more than 4 years ago | (#30569550)

particularly operating systems. Not emacs.

I am not getting the distinction here.

Operating systems generally include a text editor.

Re:Cathedral & the Bazaar? Irony? (4, Informative)

jrumney (197329) | more than 4 years ago | (#30568412)

At the time of Eric Raymond's paper, Emacs development was of the Cathedral style, but that changed with the switch from RCS to CVS and the closed emacs-hackers mailing list to emacs-devel. Compared with other major GNU projects, this switch came quite late, around 1998 (not 1993 as stated in the summary).

Re:Cathedral & the Bazaar? Irony? (0)

Anonymous Coward | more than 4 years ago | (#30568424)

I've never read it, but I believe that it was GCC that was considered a "Cathedral" project for a time.

Re:Cathedral & the Bazaar? Irony? (3, Informative)

Michael Meissner (520083) | more than 4 years ago | (#30568816)

In the 1.xx days it was a classic cathedral project until the EGCS/GCC split. In the real old days (1988-ish) you logged on to the central server and edited the files there, using emacs version mode, with the number of versions set rather high. You had to register the IP address that you would be ftp'ing the sources from, and the threat was if you were passing along pre-release versions of the source outside the clique then you would have your access denied. It was a different time....

Re:Cathedral & the Bazaar? Irony? (0)

Anonymous Coward | more than 4 years ago | (#30568434)

It was GCC. Since 3.0, GCC has taken a less cathderal like approach (although still using a centralized repository).

Re:Cathedral & the Bazaar? Irony? (0)

Anonymous Coward | more than 4 years ago | (#30568564)

IIRC, it was mostly about the GCC/EGCS fork back in the 1.x days. (EGCS "won" and became the main GCC 2.x branch.)

Re:Cathedral & the Bazaar? Irony? (3, Funny)

CAIMLAS (41445) | more than 4 years ago | (#30568498)

Oy, too much more of this, and we'll be setting ourselves up for a paradox.

You've got GNU/Emacs which is the operating system of its own, but runs on the GNU/Linux operating system as well. And it runs on the free proprietary OS. And Emacs is also in bazaar, even though it's based on the cathedral model. But its owner is very, very fond of bazaar (and bizarre, but that's neither there nor certainly here) development, despite not using it, while also using it.

Basically, we're looking at Emacs as a self-contradiction as things stand. Too much more of this and it's going to just go *poof*.

The other kewl thing (2, Funny)

kurt555gs (309278) | more than 4 years ago | (#30568078)

Is, the code for EMACS is written in vi.

Re:The other kewl thing (0, Offtopic)

oldhack (1037484) | more than 4 years ago | (#30568218)

Cuz eating yo own dog food is a bitch.

Re:The other kewl thing (2, Funny)

palegray.net (1195047) | more than 4 years ago | (#30568244)

I though it was done in pico, then shifted to nano, and edited later in TextMate...

Re:The other kewl thing (1)

Vairon (17314) | more than 4 years ago | (#30568264)

M-x skynet [No match]

I had to check, just to be sure...

Emacs is in Bazaar (5, Funny)

Anonymous Coward | more than 4 years ago | (#30568090)

I'm waiting for someone to write a Bazaar server that runs inside Emacs. Will Emacs then update itself and become self-aware? That ought to put the Emacs vs. VI debate to rest once and for all.

Hah! (3, Funny)

Anonymous Coward | more than 4 years ago | (#30568260)

It will be too late! --vi

Re:Hah! (1)

Dr. Cody (554864) | more than 4 years ago | (#30568356)

:q!

Re:Emacs is in Bazaar (0, Offtopic)

Tumbleweed (3706) | more than 4 years ago | (#30568344)

That ought to put the Emacs vs. VI debate to rest once and for all.

Much like the other major religious war on this planet (Christianity vs Islam), there will only be peace when the two sides kill each other off. I look forward to that day.

COPY CON, bitches!

Re:Emacs is in Bazaar (2, Insightful)

DMUTPeregrine (612791) | more than 4 years ago | (#30568544)

ED is the standard text editor!

Re:Emacs is in Bazaar (1)

troll8901 (1397145) | more than 4 years ago | (#30568856)

COPY CON PROGRAM.EXE ??

In *my* day, we have to flick switches and watch light bulbs at a console with 256 bits of memory, and we were grateful for the opportunity to do that!

Re:Emacs is in Bazaar (0)

Anonymous Coward | more than 4 years ago | (#30569188)

You might be joking, but I've actually done this as a job. Quite well payed too, for the time. Gots to know what switches to toggle and which lights to keep watching.

I'm as old as a dinosaur but you kids with the glitzy desktops better not forget how this all came to be. Oh, and get of my lawn, Skippy!

Re:Emacs is in Bazaar (1)

fotoguzzi (230256) | more than 4 years ago | (#30569294)

Yo, dawg! I heard you like recursion in your version control so I put a Bazaar server in your Emacs that's in Bazaar.

Re:Emacs is in Bazaar (1)

gmuslera (3436) | more than 4 years ago | (#30569488)

Start worrying when one new macro named T1000 appears by itself, will be a killer one.

what's new?; bazaar versus git (4, Interesting)

bcrowell (177657) | more than 4 years ago | (#30568256)

I started using emacs about 7 years ago, at which point the jokes about its feature creep ("nice OS, just needs a good editor," etc.) were already probably 20 years old. A few years ago I switched to mg, which is an emacs clone that is much more lightweight. The advantage of mg is that it loads immediately, and it has all the features I actually need. So maybe I'm just a curmudgeon, but -- what is currently happening in emacs development? New features? Better performance? Bug fixes? Polishing the brasswork? I'm honestly curious why it can't just go into the same kind of masterpiece-maintenance mode as some of Knuth's projects like Tex.

As far as bazaar, my impression is that it has had a much lower profile than git, and that its main selling point seems to be that it's supposed to be easier to use than git. Here [canonical.com] is bazaar's explanation of why they think bazaar is good. Here [whygitisbetterthanx.com] is a similar sales job for git. Bazaar is used by ubuntu, sponsored by Canonical, and written in Python. You can get free bazaar-based hosting on Launchpad. Personally I've been happy with git.

Re:what's new?; bazaar versus git (3, Informative)

melikamp (631205) | more than 4 years ago | (#30568350)

Two recent features in the stable release are antialiased fonts and the daemon mode (speeds up invocation, but useless for those who never quit and use Emacs for everything). I am a big fan and I cannot stand using anything else when I am coding (C++, Common Lisp, Bash, HTML, LaTeX) or editing plain text (my favorite text format). I love the default integration with gcc and make, and the fact that my ~/.emacs has clever LaTeX bindings, but the main selling point for me is the (fully justified) feeling of total control. I like knowing that I can easily extend the functionality and/or disable any feature I don't like.

Re:what's new?; bazaar versus git (3, Interesting)

Anonymous Coward | more than 4 years ago | (#30568354)

So maybe I'm just a curmudgeon, but -- what is currently happening in emacs development? New features? Better performance? Bug fixes? Polishing the brasswork? I'm honestly curious why it can't just go into the same kind of masterpiece-maintenance mode as some of Knuth's projects like Tex.

Check out org-mode. It's a fantastical set of code for managing things in emacs. It takes a bit of setting up, but it's very powerful and awesome. It's now included standard in emacs.

Re:what's new?; bazaar versus git (1)

i.of.the.storm (907783) | more than 4 years ago | (#30568552)

This. Org-mode [orgmode.org] is amazing. Watch the Google Tech Talk [youtube.com] if you want to see it in action.

Re:what's new?; bazaar versus git (0)

Anonymous Coward | more than 4 years ago | (#30568360)

I haven't used Bazaar but for everything else I have tried git is way faster. Considering Bazaar is written in Python I imagine the same is true. Nothing even comes close to the performance of git.

I'm always impressed when I do updates from the very large Qt git repositories. git just blasts through all of them like it's nothing. Contrast with when I do updates from just a single Firefox repository which uses Mercurial (also written in Python) and takes freaking forever even though it's considerably smaller than all the Qt repositories combined (but updated way faster).

Re:what's new?; bazaar versus git (4, Insightful)

Hurricane78 (562437) | more than 4 years ago | (#30568376)

As Linus explained, the “easier” argument is gone, since they did put really hard work into git’s user interface. They knew that it was bad. And what was the normal interface back then, is now the low-level interface, with a whole new, nice interface on top. (But you can still use the low-level one, when you need it.)

Anyway, maybe it’s me, but I don’t see “easy” per se as a advantage. I prefer efficiency. And more often than I like it, easiness seems to mean less efficiency.
It’s like “Those who give up some efficiency for a little easiness, deserve neither”. ^^
Of course the same is true for too (pointlessly) complicated interfaces too. (Main examples: Emacs and VI.)

The problem is, that most programmers seem to see that level of complexity as static. But it has to adapt to the user, over time. Rise when in need, fall when not. Stepless, if possible.
Instead they think in absolute, black and white, one-dimensional spaces: Either Notepad with Clippy, or Emacs/VM.
It’s so stupid.

To me, git is a tool that is pretty nice in that aspect.
Simple committing and version management for yourself is very easy.
But if you want to do crazy stuff, like go back 10 versions, patch that one with eight other forks, wrap it, and the next five versions, into one version, and put that thing not only back into your repository, but into that of others too... then it doesn’t leave you in the rain, but gives you the tools to do it.

Re:what's new?; bazaar versus git (4, Insightful)

JanneM (7445) | more than 4 years ago | (#30568600)

"Anyway, maybe it's me, but I don't see "easy" per se as a advantage. I prefer efficiency. And more often than I like it, easiness seems to mean less efficiency."

And sometimes it means more.

The main issue with the interfaces to systems like emacs, or LaTeX or git (the old one; the current interface is not bad) is that they are only really efficient if you use the tools all the time. If you use emacs all day, every day then the interface is probably fine. I constantly use LaTeX and so it's really much more effective for me than a graphical typesetting-type application. If all your software lives in git repos and you work with them most days of the week then it soon becomes second nature.

But many people don't use their tools every day. I'd say that every single one of us have some tools that we do use and do like, but we simply don't need them every day or even every week. And when you're an occasional user, no matter how "power" you are, the kind of cryptic interfaces these tools have become a hindrance, not a help. The UI is not discoverable - it's not clear how to do things you may want - so when you don't use it all the time you forget how to do even simple, common tasks.

You end up spending your time searching the web or grep:ing your own shell history to remind yourself how you do stuff, and the efficiency goes straight out the window.

"So use it more often" isn't an answer. These are tools, not something you use just for their own sake. If you don't need to, say, write a report more than once every three months then you're certainly not going to create the occasional bogus document just so you don't forget how to do things in LaTeX.

So depending on the task, more than on the user, these interfaces can be a help or a major hindrance.

Re:what's new?; bazaar versus git (1, Funny)

Anonymous Coward | more than 4 years ago | (#30568432)

There's been some huge improvements in emacs lately, and more to come. They're actually working on fixing one of the oldest problems it has.

They're going to build in VIM so they finally get a decent text editor!

*laughs manically and hides*

Re:what's new?; bazaar versus git (0)

Anonymous Coward | more than 4 years ago | (#30568542)

1986 called, they want their vip.el mode back.

Re:what's new?; bazaar versus git (2, Informative)

i.of.the.storm (907783) | more than 4 years ago | (#30568548)

Whybzrisbetterthanx [github.com] It used to by whybzrisbetterthanx.com, but I guess that domain expired. (I don't necessarily espouse the views of the site, I just find it funny).

What Does It Need? (4, Interesting)

Greyfox (87712) | more than 4 years ago | (#30568578)

Emacs is Perfect...

Well not entirely perfect, but I have yet to find a better editor for editing code. I keep my resume as a big lisp data structure which Emacs can use to emit into any markup language I care to write an emitter for (Currently HTML and plain text, but I've been pondering writing a LaTeX one as well.)

What I'd like to see in Emacs:

  • Threading. Currently everything runs in one big thread, so if you try to do too much processing with elisp the entire editor hangs up. There was a push a while back to replace elisp with Scheme, which would solve this handily, but that effort sort of petered out.
  • Better integration with GUI applications. I want to use Emacs for my editor boxes in Firefox, notably.
  • A better mail client, or better integration with a GUI mail client. Emacs together with Remembrance makes for an awesome mail combo, but every time I've tried to do Email in Emacs, it's been a huge effort to keep it going.

Ultimately it would be nifty if Emacs could work as well with the GUI components on my desktop as it can with text mode UNIX applications, but I suppose that might be asking too much of it.

Re:What Does It Need? (1)

m6ack (922653) | more than 4 years ago | (#30568692)

It needs native VI key bindings -- though I suppose there is a mode for that...

$ which emacs

$ which vi

/usr/bin/vi

$

Re:What Does It Need? (0)

Anonymous Coward | more than 4 years ago | (#30568984)

what's wrong with Wanderlust for email?

Re:What Does It Need? (1)

stephanruby (542433) | more than 4 years ago | (#30569152)

I keep my resume as a big lisp data structure which Emacs can use to emit into any markup language I care to write an emitter for (Currently HTML and plain text, but I've been pondering writing a LaTeX one as well.)

Clearly, this guy doesn't have a job yet.

For me, a paper napkin (it doesn't have to be clean), with whatever I can think of at the top of my head, usually does the job.

Re:What Does It Need? (1)

EvanED (569694) | more than 4 years ago | (#30569242)

Well not entirely perfect, but I have yet to find a better editor for editing code.

I have yet to find a code editor I really like. For text other than code, Emacs is clearly it, but for code (1) I miss IDE-like code completion, code navigation ("go to definition"), etc. features in emacs, and (2) I miss emacs-like editing in IDEs. (The substitutes for the first seem to be a poor substitute (e.g. tags files) or work very poorly or not at all (e.g. the semantic mode in cedet).)

Better integration with GUI applications. I want to use Emacs for my editor boxes in Firefox, notably.

It's not prefect integration, but check out the FF extension It's All Text! [mozilla.org] . It'll add an "edit" button to the bottom right of textareas that will open your external editor of choice.

Re:What Does It Need? (1)

Lenbok (22992) | more than 4 years ago | (#30569262)

A better mail client, or better integration with a GUI mail client. Emacs together with Remembrance makes for an awesome mail combo, but every time I've tried to do Email in Emacs, it's been a huge effort to keep it going.

I find the Wanderlust email client for emacs is pretty damn good - give it a try.

Re:What Does It Need? (2, Interesting)

tyroneking (258793) | more than 4 years ago | (#30569406)

Have you thought of re-booting your Emacs addiction?

gVim was perfect - I used to write all of my documents in restructured text (gVim addon or rst2pdf to get PDFs) and all my emails with Mutt and Pine.

One day I switched to Freemind and Open Office for documents and Gmail for email ... so terribly un-geek like, but so much easier.

Never looked back.

You should give it a try.

Re:what's new?; bazaar versus git (1)

shadowpuppy (629329) | more than 4 years ago | (#30568630)

I don't really think bloat is an issue with Emacs any more. Not that it hasn't/won't grow in size over time but computers and other IDEs have far surpassed it.

Antialiased fonts make the new version completely worth the upgrade. They're just so much more pleasant to look at.

One feature missing from all of them (1)

harlows_monkeys (106428) | more than 4 years ago | (#30569140)

There's one feature that, as far as I've been able to tell, is not in any of the major version control systems, whether distributed or not. That's good support for directory-based files.

What I mean by "directory-based files" are documents that are treated as a file by the applications that know about them, and the GUI system, but are actually implemented as a directory. The major example would be MacOS package files. For example, an OmniOutliner document actually consists of a directory with the name of your document, and in that directory there is an XML file with the outline and the files for any attachments to the outline, thumbnails of images, and things like that. In the Finder, the whole directory is treated as a file.

Verson control systems tend to see these as directories with files in them. This leads to a couple problems.

First, if you edit the document, and that causes files to get added to the directory, the VCS won't know that these need to be added to the repository. Same if your editing causes a file to go away--the VCS won't know it needs to treat that as a delete when you commit.

Second, if the VCS stores metadata in each directory (like Subversion does), and the application that writes the document uses the write/rename/rename/delete method of safe updating, it ends up making a new directory, blowing away the metadata.

I would love to see a VCS that handles these directory-based files automatically.

Why not git? (1)

colin_n (50370) | more than 4 years ago | (#30568258)

Why use Bazaar over Git?

Re:Why not git? (2, Insightful)

Anonymous Coward | more than 4 years ago | (#30569558)

Why use Git over Bazaar?

Re:Why not git? (1)

TheRaven64 (641858) | more than 4 years ago | (#30569586)

Because Bazaar is a GNU project.

First first post!!! (-1, Redundant)

Anonymous Coward | more than 4 years ago | (#30568396)

Emacs's first first recorded version-control commits date from August, 1985.

GIT vs Mercurial vs Bazaar (1)

harlows_monkeys (106428) | more than 4 years ago | (#30568606)

Why GIT is Better Than X [whygitisbetterthanx.com]

Why Mercurial is Better Than X [whyhgisbetterthanx.com]

Why Bazaar is Better Than X [github.com]

EMACS discovers "distributed development" (0, Troll)

m6ack (922653) | more than 4 years ago | (#30568678)

[Almost-a-troll]... but chooses an in-grown (GNU) tool instead of the best of breed -- i.e. git? Yeah... same-old, same-old RMS. Funny that BZR is now sponsored by Canonical...[/Almost-a-troll]

Re:EMACS discovers "distributed development" (2, Insightful)

Vintermann (400722) | more than 4 years ago | (#30568922)

bzr has been sponsored by canonical for ages. It grew out of Tom Lord's Arch project, which was the first serious attempt at an open source distributed VCS.

Re:EMACS discovers "distributed development" (1)

OrangeTide (124937) | more than 4 years ago | (#30569256)

arch's command-line interface was worse than git's. And starting filenames with + was just a tremendous annoyance to vi users, I think it was done intentionally.

X / X.org is older, and moved there faster (1, Informative)

Anonymous Coward | more than 4 years ago | (#30569172)

I worked with Jim Gettys, Keith Packard and Carl Worth to help migrate the X.org codebase to git, this was around January 2006 (at LinuxConf AU'06 and shortly after). According to JG, there are in existence ~25 years of SCM history, but the CVS repos imported dated from way back around 15 years IIRC.

~ m langhoff

How bazaar! (2, Funny)

Dachannien (617929) | more than 4 years ago | (#30569588)

If this pattern holds, GNU Emacs will be in Bazaar for at least thirty-two years.

I'm pretty sure Emacs has already been bizarre for at least 32 years.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?
or Connect with...

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>