¿Qué significan estas palabras en Git: repository, fork, branch, clone, track?

Sinceramente, no tengo claro la semántica aquí. Se trata de copys / variantes de un código + unidad de historial, pero más allá de eso no estoy seguro de poder decirlo. ¿Esta estructura lógica se explica en alguna parte?

Un repository es simplemente un lugar donde se almacena el historial de su trabajo. A menudo vive en un subdirectory .git de su copy de trabajo, una copy del estado más reciente de los files en los que está trabajando.

Para bifurcar un proyecto (tomar la fuente del repository de alguien en cierto punto en el time y aplicarle sus propios cambios divergentes), debe clonar el repository remoto para crear una copy y luego hacer su propio trabajo en su repository local y Cometer cambios.

Dentro de un repository tienes twigs, que son realmente tenedores dentro de tu propio repository. Sus twigs tendrán un ancestro comprometido en su repository, y divergirán de ese compromiso con sus cambios. Luego puede fusionar los cambios de sucursal. Las twigs le permiten trabajar en múltiples características dispares a la vez.

También puede rastrear twigs individuales en repositorys remotos. Esto le permite get cambios de las twigs de otra persona y fusionarlas en una twig propia. Esto puede ser útil si usted y un amigo están trabajando juntos en una nueva function.

Hay muchos libros geniales en línea. Eche un vistazo a ProGit y Git Magic para comenzar, así como los tutoriales oficiales y el libro de la comunidad.

Voy a responder mi propia pregunta con un RTFM.

Pero, lee este buen manual. Como dice el autor:

"La conclusión que saco de esto es que solo puedes usar Git realmente si entiendes cómo funciona Git. Simplemente memorice qué commands debe ejecutar a qué horas funcionará a corto ploop, pero es solo cuestión de time antes de que se quede atascado o, lo que es peor, se rompa algo.

"La mitad de los resources existentes en Git, desafortunadamente, adopta ese mismo enfoque: te guían a través de los commands para ejecutar cuando, y esperan que estés bien si imitas esos commands. La otra mitad analiza todos los conceptos, pero por lo que he visto, explican a Git de una manera que asume que ya entiendes cómo funciona Git ".

Esta GoogleTechTalk es una fantástica introducción a Git para aprender lo que está sucediendo detrás de escena mientras aprenden el idioma también. Lo dio un queueborador muy temprano de Git y dio esta charla en 2007 como una forma de presentación en Git. Si miras esta charla, no solo sabrás qué es cada palabra, como repository, bifurcación, bifurcación, etc., sino que también sabrás qué ocurre detrás de las escenas cuando cada una de ellas se crea, combina, etc.

La dirección es larga pero muy informativa. También contrasta a Git con otros sistemas de control de versiones para que pueda conocer por qué se creó Git tal como era y cuáles son sus ventajas comparativas con respecto a otros sistemas de control. Aunque la charla es antigua, es muy útil comenzar a funcionar. Vería esto antes de saltar a los manuales. Creo que las cosas tendrán mucho más sentido como resultado.