On l'a évoqué brièvement dans la partie décrivant le cycle de vie des fichiers : l'ajout à l'index stocke des photos des fichiers.

Mais qu'est-ce que ça signifie exactement ?

Imagine que tu travailles à la rédaction d'un journal, et que ton dépôt local stocke les photos pour la prochaine publication. Un commit contiendrait alors les photos d'un article.

Je vais te raconter tout ça sous forme d’une petite histoire, en espérant que ça facilite ta compréhension.

Je te présente Camille, photographe stagiaire ; elle est chargée de photographier les fichiers que tu lui demandes pour ton article. Attention, double moyen mnémotechnique pour retenir son rôle : elle est en stage ou “stage” avec l’accent anglais, et elle appuie avec son index pour prendre les photos… Tu as vu comme je redouble de créativité pour t’aider à comprendre… Allez, je reviens au rôle de Camille : elle liste sur son tableau les photos que tu choisis de garder pour la publication du journal.

D'ailleurs voici un premier fichier à photographier. 

On demande donc à Camille de prendre une photo. Elle s'exécute et son appareil lui donne une capture du fichier et lui fournit une référence pour cette photo (rappelle-toi, notre histoire de SHA-1). 

Elle place alors la photo optimisée dans le journal en préparation. Puis elle inscrit sur son tableau la référence de la photo, son nom initial et son emplacement. 

Arrive ensuite un second fichier qu'on souhaite aussi dans notre article. Camille le photographie donc et inscrit sa référence dans la liste.

Les actions menées par Camille sont donc ce que réalise notre index Git. Il prend les photos qu'on lui demande et les stocke temporairement dans l'attente de la réalisation d'un commit.