[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: VCS (was: hurd-web/hurd/translator/unionmount.mdwn)

From: Arne Babenhauserheide
Subject: Re: VCS (was: hurd-web/hurd/translator/unionmount.mdwn)
Date: Wed, 23 Sep 2009 16:01:36 +0200
User-agent: KMail/1.12.1 (Linux/2.6.30-gentoo-r5; KDE/4.3.1; x86_64; ; )

Am Mittwoch, 23. September 2009 14:45:41 schrieb Sergiu Ivanov:
> Well, yes, but wasn't CVS, for instance, created for distributed code
> collaboration, too?  Or do I understand the word ``distributed''
> wrong?

The difference is that in CVS you have a reference server, so it's normally 
called "centralized", while in Git, Mercurial and Bazaaar every clone has the 
full history and you can synchronize with whomever you want - not only with 
the central server. 

> A very nice map of differences, thank you :-) I'll use this mail as a
> kind of reference for the future, if you don't mind ;-)

It's only a list of examples :) 

Here's a much nicer comparision, though a bit outdated (the comments bring it 
a bit up to date): 
- http://importantshock.wordpress.com/2008/08/07/git-vs-mercurial/
"McGyver and James Bond" :) 

But I forgot two examples: 

- Mercurial: History is seldomly rewritten and mostly considered as fixed. 
- Git: History is rewritten often. 

- Mercurial: A tag is simply part of a changeset and thus versioned as 
everything else. 
- Git: A tag is set by an authoritative source and outside version control. 

> > This also means, that scripts should always use the long version, because
> > extensions can add commands, so an abbreviation can become ambigous when
> > you add an extension (everything has its downside :) ).
> Sounds complicated, but also like it shouldn't be extremely hard to
> handle the problems once you know about them :-)

It sort of automatically creates shorter aliases for you - saves keystrokes. 

And when you use an ambigous abbreviation, it tells you the ones from which 
would fit. For example for me, "hg ch" says the following: 
$ LANGUAGE=en hg ch
hg: command 'ch' is ambiguous:
    checkout chist churn

chist is from the cutehg extension (GUI in Qt) and churn is from the churn 
extension (statistics about committers). 

(LANGUAGE=en keeps it from answering in german :) ). 

Best wishes, 

--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
   - singing a part of the history of free software -

Attachment: signature.asc
Description: This is a digitally signed message part.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]