git add
Description
La commande git add ajoute les modifications du répertoire de travail à la zone de staging. Grâce à elle, vous indiquez à Git que vous souhaitez inclure les mises à jour d'un fichier spécifique dans le prochain commit. Cependant, pour enregistrer ces modifications, vous devez également exécuter git commit. Combinée aux commandes mentionnées ci-dessus, la commande git status est également utile pour vérifier l'état du répertoire de travail et de la zone de staging.

Principes de fonctionnement
Les commandes git add et git commit sont utilisées pour enregistrer les versions du projet dans l'historique du dépôt. Elles sont essentielles pour chaque utilisateur de Git, car elles constituent la base du flux de travail Git.
Lors du développement d'un projet, vous modifiez d'abord des fichiers dans le répertoire de travail. Lorsqu'une copie de l'état actuel est prête à être sauvegardée, vous mettez les modifications en staging à l'aide de git add. La commande git add doit être exécutée chaque fois que vous modifiez un fichier.
Zone de staging
Le rôle principal de la commande git add est de promouvoir les modifications du répertoire de travail vers la zone de staging de Git. La zone de staging est l'une des caractéristiques les plus spécifiques de Git, car elle vous permet de regrouper toutes les modifications connexes en instantanés très ciblés. Ce n'est qu'après cela que vous pouvez valider (commit) ces modifications dans l'historique de votre projet.
Options courantes
- Mise en staging des modifications dans
<file>pour le prochain commit :
git add file
git add <file>- Mise en staging de toutes les modifications dans
<directory>pour le prochain commit :
git add directory
git add <directory>- Mise en staging de toutes les modifications dans les fichiers déjà suivis :
git add -u
git add -u- Mode de patch interactif (mise en staging des modifications bloc par bloc) :
git add -p
git add -pExemples de git add
Les commandes git add et git commit sont utilisées pour créer un commit initial du répertoire courant, ainsi que pour enregistrer les modifications apportées aux fichiers existants.
Après avoir démarré un projet, vous pouvez ajouter de nouveaux fichiers en passant leur chemin à git add.
Ajouter un fichier
git add hello.pyValider les modifications
git commitMode interactif
Une session de staging interactive vous permet de choisir des parties d'un fichier à ajouter au prochain commit. Un bloc de modifications vous sera affiché et une commande vous sera demandée. Les options disponibles sont :
y- mettre le bloc en stagingn- ne pas mettre le bloc en stagingq- quitter ; ne pas mettre le bloc en staging ni aucun des suivantsa- mettre le bloc en staging ainsi que tous les blocs suivants dans le fichierd- ne pas mettre le bloc en staging ni aucun des blocs suivants dans le fichierg- sélectionner un bloc vers lequel aller/- rechercher un bloc correspondant à l'expression régulière donnéej- aller au bloc suivantJ- aller au bloc précédentk- aller au bloc précédentK- aller au bloc précédent non décidés- diviser le bloc actuel en blocs plus petitse- modifier manuellement le bloc actuel?- afficher l'aide
Modification des patches
L'appel de git add -e ou la sélection de e dans le sélecteur de blocs interactif ouvre un patch dans votre éditeur. Après avoir quitté l'éditeur, la sortie est appliquée à l'index. Vous pouvez apporter des modifications arbitraires au patch, mais certaines modifications peuvent entraîner des sorties complexes ou même rendre le patch inapplicable. Si vous souhaitez annuler l'opération entièrement, supprimez simplement toutes les lignes du patch. Voici quelques éléments courants que vous pouvez voir dans un patch, et les opérations de modification qui leur correspondent.
Les lignes commençant par + représentent le contenu ajouté. Vous pouvez les supprimer pour empêcher la mise en staging de ces lignes ajoutées.
Les lignes commençant par - représentent le contenu supprimé. Pour empêcher la mise en staging de leur suppression, vous pouvez remplacer le - par un espace ().
Le contenu modifié est affiché avec des lignes - (suppression de l'ancien contenu) suivies de lignes + (ajout du contenu de remplacement). Pour empêcher la mise en staging de la modification, convertissez les lignes - en espaces et supprimez les lignes +. Notez que la modification d'une seule moitié de la paire peut entraîner des modifications confuses de l'index.
Pratique
Quelles sont les fonctionnalités et options associées à la commande 'git add' ?