Un commit in Git rappresenta uno snapshot (istantanea) del repository in uno specifico momento nel tempo. Sebbene questa definizione possa sembrare banale, vale la pena sottolineare che:
- a differenza di altri version control system, il commit in Git non si limita a memorizzare le differenze tra due versioni successive del contenuto della directory, ma salva l’istantanea (compressa) del contenuto di tutti i file che al momento del commit facevano parte del repository
- se un file non cambia contenuto tra due commit, non viene memorizzata una nuova versione compressa, ma viene messo un riferimento all commit precedente
- ogni commit conosce il suo “genitore” (parent commit), ossia il commit a lui immediatamente precedente
Il commit è l’entità base su cui si basano i repository Git