tags:

views:

3078

answers:

16

I would like to understand the way git works from a architects point of view. How are files stored, how are versions kept and how do changes happen (branches, merges, etc.)?

I am not searching for information how to use it. (I already found a lot of pages with tutorials.) But I did not find any "behind the scenes" details, that would make me understand.

+4  A: 

The git source code. :-)

Chris Young
First I had a line in my description that said: "And please something that is shorter than the source code" :) I decided to drop it, because I thought that was somehow obvious. ;)
MrFox
Nothing is ever obvious, especially when your primary target audience is primarily composed of geeks. ;-)
JesperE
But, MrFox, the sources aren't that hard to read, and they *are* the best place to figure out details that aren't documented.
Ben Collins
A: 

http://git.or.cz/

Ronald Conco
I found that site before. And I still do not find information on design/architecture - only for the usage.
MrFox
+2  A: 

I found this site when I googled "git architecture": http://speirs.org/2007/07/19/a-subversion-user-looks-at-git

Git has a mailing list: "[email protected]&body=subscribe%20git" (http://git.or.cz/#community)

And this wikipedia article may be helpful: http://en.wikipedia.org/wiki/Git_(software)

warren
A: 

Wikipedia might get you started.

I do remember encountering some documents describing some of the internal architecture, so I know that they are out there. I just can't remember where they were...

Henrik Paul
A: 

I've found the Git User Manual to be very enlightening.

JesperE
+2  A: 

There's a good Google tech talk: Linus Torvalds on git

OK, it's not something to read but it does cover some of the Git internals and design philosophy.

Colonel Sponsz
+5  A: 

http://eagain.net/articles/git-for-computer-scientists/

http://www.loria.fr/~molli/pmwiki/uploads/Main/gitmanual.pdf Chap 7

http://www.newartisans.com/blog_files/git.from.bottom.up.php

Gene T
Git From the Bottom Up is *the* starting point for understanding the architecture. Linus's talk complements it well.
Paul
+1  A: 

This talk by Randal Schwartz gave me a pretty good overview.

innaM
A: 

I found these pages useful :

Michel
+15  A: 

Check out Git from the Bottom Up

webmat
+1  A: 

One day I actually sat down and read the entire Git User's Manual. Turned out to be a good idea -- the manual is very helpful, explains a lot, and is quite clear and provides useful examples.

mipadi
+3  A: 

The US$9 100+ page PDF book from PeepCode called Git Internals is fantastic. It's well written, uses great, clear visuals and is also a quick read. I absorbed as much free online material as I could but this book put me over the top.

Pat Notz
A: 

There are some interesting documents on the Documentation/technical directory of the git source code.

CesarB
+1  A: 

For me, the following three resources were very, very helpful, in this order:

  1. The Thing About Git explained why I should even care

  2. Git Magic explained how to get started

  3. Git The Basics [pdf] explained - graphically, and in detail - what happens when I add, remove, merge, etc.

+1  A: 

The Git Internals ebook has already been mentioned. I will point out that its author, Scott Chacon, gave a fantastic presentation about git at RailsConf 2008 that covers much the same ground as the book.

Said Scott now maintains http://git-scm.com/, which includes the Git community book, which is more of a usage tutorial than a technical description, but does include both a nice conceptual overview of the git data model in the introductory chapter and a detailed one in its closing chapter.

Aristotle Pagaltzis
A: 

To understand how git works you need to read Pro Git book, fully available online for free.

Written by Scott Chacon, one of the guys behind GitHub.

I wrote my opinion about the book in a review at Amazon.

J. Bruni