Re: git and bzr

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Johannes Schindelin <Johannes.Schindelin@...>
Cc: Nicholas Allen <nick.allen@...>, Jakub Narebski <jnareb@...>, <bazaar-ng@...>, <git@...>
Date: Wednesday, November 29, 2006 - 1:29 pm

On Wed, 29 Nov 2006, Johannes Schindelin wrote:

The thing is, the staging area is needed for a lot more than just merges. 
Every single SCM has one, because even something as _trivial_ as "commit 
all files" actually needs it. People don't just always think about it, and 
the git staging area is "bigger" than most others.

Most other SCM's have a staging area that is just a list of filenames 
(nobody thinks about it, but "commit everything" doesn't actually commit 
everything at all - it just commits everything /in the list of files that 
the SCM knows about/).

Git's staging area is just more complete than most other SCM's. It 
contains not just the list of filenames, but their permissions too (where 
a lot of other SCM's *cough*CVS*cough don't do permissions at all), but 
also their content, and in the case of a merge conflict, the content of 
the base version and the two branches to be merged.

So the index really _is_ required for pretty much all operations 
(including very much "git commit -a", if only because of the filename 
list), but yeah, if you start by talking about merge conflicts, maybe 
people understand WHY it's also important to actually stage the _contents_ 
of a file too (multiple times, in fact, for a merge conflict), not just 
its name.

So most of the time, when you use git, you can ignore the index. It's 
really important, and it's used _all_ the time, but you can still mostly 
ignore it. But when handling a merge conflict, the index is really what 
sets git apart, and what really helps a LOT.

I've used other systems, but the git handling of merge conflicts really is 
superior. Other SCM's think that the merge algorithm is interestign and 
important, and that's bullshit. Merge algorithms are largely trivial and 
uninteresting. The interestign and important thing is to just handle 
failures well, and git does that _really_ well.

			Linus
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: git and bzr, Jakub Narebski, (Tue Nov 28, 2:06 pm)
Re: git and bzr, Nicholas Allen, (Tue Nov 28, 4:37 pm)
Re: git and bzr, Martin Langhoff, (Tue Nov 28, 5:40 pm)
Re: git and bzr, Nicholas Allen, (Tue Nov 28, 5:26 pm)
Re: git and bzr, Linus Torvalds, (Tue Nov 28, 5:49 pm)
Re: git and bzr, Nicholas Allen, (Tue Nov 28, 6:00 pm)
Re: git and bzr, Linus Torvalds, (Tue Nov 28, 6:25 pm)
Re: git and bzr, Johannes Schindelin, (Wed Nov 29, 6:52 am)
Re: git and bzr, Linus Torvalds, (Wed Nov 29, 1:29 pm)
Re: git and bzr, Marko Macek, (Wed Nov 29, 2:54 pm)
Re: git and bzr, Andreas Ericsson, (Thu Nov 30, 8:25 am)
Re: git and bzr, Theodore Tso, (Thu Nov 30, 4:01 pm)
Re: git and bzr, Linus Torvalds, (Wed Nov 29, 4:45 pm)
Re: git and bzr, Carl Worth, (Wed Nov 29, 8:05 pm)
Re: git and bzr, Raimund Bauer, (Thu Nov 30, 2:59 am)
Re: git and bzr, Andreas Ericsson, (Thu Nov 30, 8:45 am)
Re: git and bzr, Johannes Schindelin, (Thu Nov 30, 6:19 am)
Re: git and bzr, Nguyen Thai Ngoc Duy, (Thu Nov 30, 7:25 am)
Re: git and bzr, Johannes Schindelin, (Thu Nov 30, 8:23 am)
Re: git and bzr, Nguyen Thai Ngoc Duy, (Thu Nov 30, 5:01 am)
Re: git and bzr, Alan Chandler, (Thu Nov 30, 5:30 am)
Re: git and bzr, Steven Grimm, (Thu Nov 30, 5:39 am)
Re: git and bzr, Alan Chandler, (Thu Nov 30, 4:31 am)
Re: git and bzr, Carl Worth, (Thu Nov 30, 3:17 am)
Re: git and bzr, Carl Worth, (Wed Nov 29, 8:08 pm)
Re: git and bzr, Johannes Schindelin, (Wed Nov 29, 4:07 pm)
Re: git and bzr, Jakub Narebski, (Wed Nov 29, 4:49 pm)
Re: git and bzr, Nicholas Allen, (Tue Nov 28, 6:46 pm)
Re: git and bzr, Linus Torvalds, (Tue Nov 28, 6:41 pm)
Re: git and bzr, Nicholas Allen, (Tue Nov 28, 6:48 pm)
Re: git and bzr, Johannes Schindelin, (Wed Nov 29, 6:49 am)
Re: git and bzr, Jon Loeliger, (Wed Nov 29, 4:37 pm)
Re: git and bzr, Jakub Narebski, (Wed Nov 29, 7:01 am)
Re: git and bzr, Shawn Pearce, (Tue Nov 28, 5:53 pm)
Re: git and bzr, Linus Torvalds, (Tue Nov 28, 6:13 pm)
Re: git and bzr, Nicholas Allen, (Tue Nov 28, 3:11 pm)
Re: git and bzr, Andy Parkins, (Tue Nov 28, 3:40 pm)
Re: git and bzr, Nicholas Allen, (Tue Nov 28, 2:58 pm)