La commande git add -i
est utilisée pour entrer dans le mode de mise en scène interactif. Cette fonction de Git permet aux utilisateurs d'effectuer plusieurs opérations sur leur répertoire de travail et sur la zone de mise en attente de façon interactive et granulaire.
Dans le mode interactif, l'utilisateur peut examiner l'état du répertoire, choisir des fichiers ou des sections de fichiers à inclure dans le prochain commit, et plus encore. Il fournit un moyen plus flexible et détaillé de déterminer quelles modifications doivent être incluses dans un commit.
Lorsque vous tapez git add -i
, vous verrez un prompt qui présente un menu avec différentes options. Par exemple :
staged unstaged path
1: unchanged +1/-1 README.md
2: unchanged +5/-17 file.txt
*** Commands ***
1: status 2: update 3: revert 4: add untracked
5: patch 6: diff 7: quit 8: help
What now>
Chaque commande dans le menu vous permet d'effectuer une opération différente avec vos fichiers. Par exemple, 'status' vous montrera quels fichiers ont des modifications, 'update' ajoutera un fichier à la zone de mise en attente, 'revert' supprimera le fichier de la zone de mise en attente, et ainsi de suite.
Une fois que vous avez terminé vos modifications, vous pouvez simplement taper 'quit' pour sortir du mode interactif et retourner au terminal.
L'utilisation de git add -i
est recommandée lorsque vous travaillez sur un projet collaboratif ou sur un gros projet où différentes fonctionnalités sont développées en parallèle. Cela vous permet de contrôler de manière précise quelles modifications doivent être commitées et évite d'inclure des modifications indésirables qui peuvent introduire des bugs ou des conflits.
En outre, git add -i
est également utile lorsque vous souhaitez diviser vos modifications en plusieurs commits cohérents, au lieu d'un seul gros commit. Cela rendra l'historique de votre projet plus propre et plus facile à suivre pour les autres membres de votre équipe.
En conclusion, git add -i
est un outil puissant qui vous permet de contrôler de façon interactive et précise quelles modifications doivent être commitées. Son utilisation contribue à un historique de commit propre, ce qui facilite la collaboration et le suivi des modifications du projet.