¿Qué necesito leer para entender cómo funciona Git?

Me gustaría entender la forma en que funciona git desde el punto de vista de un arquitecto. ¿Cómo se almacenan los files, cómo se guardan las versiones y cómo ocurren los cambios (twigs, fusiones, etc.)?

No estoy buscando información sobre cómo usarlo. (Ya encontré muchas páginas con tutoriales). Pero no encontré ningún detalle "detrás de escena", eso me haría entender.

Para mí, los siguientes tres resources fueron muy, muy útiles, en este order:

  1. The Thing About Git explicó por qué incluso me importaba

  2. Git Magic explicó cómo comenzar

  3. Git The Basics [pdf] explicó, gráficamente y en detalle, qué ocurre cuando agrego, elimino, fusiono, etc.

El ebook de Git Internals ya ha sido mencionado. Señalaré que su autor, Scott Chacon, hizo una presentación fantástica sobre git en RailsConf 2008 que cubre casi el mismo terreno que el libro.

Dijo Scott ahora mantiene http://git-scm.com/ , que incluye el libro de la comunidad de Git , que es más un tutorial de uso que una descripción técnica, pero incluye una buena descripción conceptual conceptual del model de datos git en la introducción capítulo y uno detallado en su capítulo final.

El libro en PDF con más de US $ 9 de más de 100 páginas de PeepCode llamado Git Internals es fantástico. Está bien escrito, usa imágenes excelentes y claras, y también es una lectura rápida. Absorbí tanto material gratuito en línea como pude, pero este libro me puso en la parte superior.

Para entender cómo funciona git, necesitas leer el libro Pro Git , totalmente disponible en línea gratis .

Escrito por Scott Chacon, uno de los chicos detrás de GitHub .

Escribí mi opinión sobre el libro en una reseña en Amazon .

Supongamos que vivimos en una era pre gitana. Y desea escribir un sistema de control de versiones que sea rápido y mejor que los vcs existentes. Todo lo que necesitas es una gran idea. En ese momento, el siguiente artículo sería de mucha ayuda.

http://tom.prestn-werner.com/2009/05/19/the-git-parable.html

Hay una buena charla técnica de Google: Linus Torvalds en git

De acuerdo, no es algo para leer, pero cubre algunos de los aspectos internos de Git y la filosofía del layout.

Encontré estas páginas útiles:

  • gitcore-tutorial
  • conceptos de git del manual del usuario
  • layout del repository git

Encontré este sitio cuando busqué en Google "architecture git": http://speirs.org/2007/07/19/a-subversion-user-looks-at-git

Git tiene una list de correo: "majordomo@vger.kernel.org&body=subscribe%20git" ( http://git.or.cz/#community )

Y este artículo de wikipedia puede ser útil: http://en.wikipedia.org/wiki/Git_(software)

El código fuente de git. 🙂

Wikipedia podría ayudarte a comenzar.

Recuerdo haber encontrado algunos documentos que describen parte de la architecture interna, así que sé que están ahí. Simplemente no puedo recordar dónde estaban …

Un día, en realidad, me senté y leí todo el Manual del usuario de Git . Resultó ser una buena idea: el manual es muy útil, explica mucho, es bastante claro y brinda ejemplos útiles.

Esta charla de Randal Schwartz me dio una muy buena visión general.

He encontrado que el Manual de usuario de Git es muy esclarecedor.

Hay algunos documentos interesantes en el directory Documentation / technical del código fuente de git.