git – definición de compromiso del folleto "Git from bottom-up"

Estoy leyendo "Git from bottom-up" y define "commit" de la siguiente manera:

"Un commit es una instantánea de tu tree de trabajo en algún momento"

Sin embargo, no estoy de acuerdo con esa definición. Es posible que tenga 5 files (1 nuevo y 4 modificado) en su tree de trabajo, pero solo 3 agregados al índice. Por lo tanto, si se compromete, su confirmación no se corresponderá con el tree de trabajo actual.

¿Hay algo que me falta o estoy en lo cierto?

No, no te estás perdiendo algo. Sin duda, es posible tener confirmaciones que no representan un estado en el que su tree de trabajo estuvo realmente en algún momento. Pero sí funcionan como un tipo lógico de instantáneas del estado del tree, incluso si se trata de un estado lógico que nunca existió en el disco.