Central Code Repository Model : un dépôt central contenant le copie master sur lesquels les usagers peuvent travailler
distributed Version Control :
différents utilisateurs ou équipes d'utilisateurs maintiennent leur propres dépôts, au lieu de travailler sur un dépôt central
les changements sont stockés sous forme de “change sets” ou “patches”
on track les changements, pas les versions
différent de CVS et SVN, qui trackent les versions
Git stockent les changements sous forme de “discrete units” qui peuvent être échangées entre les dépôts
La question n'est pas la version mais quels “change sets” ont été appliqués
plus de “master” mais de nombreuses copies fonctionnelles avec chacunes leur combinaisons de change sets appliqués
on parle souvent de dépôt master, mais c'est une convention de nommage et non une réalité inscrite dans Git, pour un dépôt auquel tout le monde va soumettre ses changements
pas besoin de communiquer avec un serveur central pour communiquer
plus rapide
pas besoin d'accès réseau pour travailler
pas de 'single failure point'
encourage la participation et le forking de projet
les développeurs peuvent travailler indépendamment
submit change sets for inclusion or rejection
all repositories are considered equal by Git.