Ajouter et supprimer des fichiers dans Git

Effectué

Après avoir initialisé votre dépôt Git local, vous pouvez commencer à travailler sur votre extension AL. Chaque fichier que vous créez doit être ajouté à votre dépôt. Pour ce faire, vous devez exécuter certaines commandes. Examinons différentes commandes permettant d’ajouter des fichiers à votre dépôt ou d’en supprimer, et de valider vos modifications dans le dépôt Git.

Ajouter des fichiers

Pour ajouter un fichier non suivi ou modifié (ou plusieurs fichiers) à Git, vous pouvez utiliser la commande add. Cette commande ajoute vos fichiers modifiés du répertoire de travail à la zone d’indexation. Avec la commande add, vous spécifiez le nom du fichier à ajouter. Un astérisque permet d’indiquer tous les fichiers.

git add <filename>

git add *

Dans Visual Studio Code, vous pouvez ajouter un fichier en cliquant sur le signe + en regard d’un nom de fichier dans la fenêtre du contrôle de code source (Ctrl+Maj+G). Cette action place votre fichier dans la zone d’indexation. Pour ajouter tous les fichiers modifiés, vous pouvez cliquer sur le signe + dans la section MODIFICATIONS.

Capture d’écran de la fonctionnalité + permettant d’ajouter un fichier à la zone d’indexation.

Le résultat de l’ajout de fichiers à la zone d’indexation est visible dans la section MODIFICATIONS INDEXÉES dans Visual Studio Code. Dans la capture d’écran suivante, les fichiers app.json, BodyType.al et .gitignore sont indexés. Ils se voient également affecter le code statut A, qui indique qu’ils sont ajoutés.

Capture d’écran de la section MODIFICATIONS INDEXÉES dans Visual Studio Code.

Supprimer un fichier indexé

Si vous avez ajouté un fichier à la zone d’indexation, mais qu’il ne doit pas être inclus, vous pouvez le désindexer. Pour ce faire, utilisez la commande reset.

git reset HEAD <filename>

Cette commande replace le fichier dans le répertoire de travail et le supprime de la zone d’indexation. Si vous l’utilisez sur des fichiers récemment ajoutés, votre fichier redevient non suivi.

Dans Visual Studio Code, vous pouvez utiliser le signe - pour désindexer ou réinitialiser un fichier.

Capture d’écran de la fonctionnalité – permettant de désindexer ou réinitialiser un fichier indexé.

Valider vos fichiers indexés dans le répertoire Git

Une fois vos fichiers dans la zone d’indexation, vous pouvez utiliser la commande commit pour les stocker dans le répertoire Git. Chaque validation prend tous les fichiers de la zone d’indexation, les ajoute au répertoire Git et contient votre nom d’utilisateur et votre adresse e-mail.

git commit

Une validation a toujours besoin d’un message de validation. Si vous utilisez la commande précédente, l’éditeur par défaut s’ouvre et vous permet de saisir un message de validation. Vous pouvez également utiliser l’option -m.

git commit -m "Your message comes here"

Dans Visual Studio Code, vous disposez d’une GUI pour saisir votre message de validation. Vous pouvez saisir ce message à deux emplacements. Vous pouvez le saisir dans le volet SCM juste au-dessus de la section MODIFICATIONS INDEXÉES.

Capture d’écran de la zone d’ajout d’un message de validation dans le volet SCM.

Si vous ne fournissez pas de message lorsque vous cliquez sur le bouton de validation, Visual Studio Code vous demande également d’en saisir un.

Capture d’écran de l’invite demandant de saisir un message.

La validation réelle est effectuée à l’aide de l’icône en forme de coche ou des commandes commit de la liste des commandes Git. Vous pouvez ouvrir la liste des commandes en cliquant sur les trois points de suspension.

La commande Valider les modifications indexées valide uniquement les fichiers de la zone d’indexation. L’icône en forme de coche est un raccourci pour la commande Valider les modifications indexées. En général, chaque validation crée une entrée de validation dans Git. Chaque validation génère une chaîne de validation unique qui identifie de manière unique cette validation.

Par exemple :

521747298a3790fde1710f3aa2d03b55020575aa

Si vous sélectionnez l’option Modifier, vos modifications sont ajoutées à la dernière validation, au lieu de créer une validation. Cette option est utile si vous avez oublié certains fichiers.

git commit --amend

Capture d’écran de la validation de modifications dans Visual Studio Code.

Si aucun fichier n’est ajouté à la zone d’indexation, mais que vous cliquez sur le bouton de validation, Visual Studio Code affiche un message indiquant l’absence de fichiers dans la zone d’indexation, mais il vous demande également si vous souhaitez valider les fichiers se trouvant dans votre répertoire de travail à la place. Ainsi, il contourne la zone d’indexation. Vous pouvez également le faire à l’aide de l’option -a de la commande commit.

git commit -a -m "Your message comes here"

Une fois une validation exécutée, cliquez sur le nom de la branche (dans cet exemple, principale). Le système affiche alors non seulement une option pour créer une branche, mais aussi l’ID de validation que votre branche utilise.

Capture d’écran de l’ID de validation dans le nom de la branche.

Il est recommandé d’ajouter souvent vos fichiers modifiés à la zone d’indexation, et s’ils sont prêts et stables, vous pouvez les valider dans votre répertoire Git. N’attendez pas la fin de la journée : validez plutôt vos modifications le plus souvent possible.

Supprimer un fichier du dépôt

Si vous supprimez un fichier de votre répertoire de travail à l’aide de l’Explorateur Windows ou dans Visual Studio Code, votre fichier fait toujours partie du dépôt Git. Utilisez la commande rm pour indiquer au dépôt Git que vous souhaitez supprimer le fichier de votre projet. Cette action est stockée dans votre zone d’indexation, avec les fichiers que vous avez modifiés ou ajoutés. Lorsque vous effectuez une validation, la suppression de votre fichier est réalisée dans le dépôt Git.

git rm <filename>

Une suppression est automatiquement détectée dans le répertoire de travail et rendue visible dans Visual Studio Code. Ce fichier se voit affecter un code statut D, qui indique sa suppression du disque. Indexez cette modification pour exécuter la commande rm et effectuez une validation pour le supprimer complètement du répertoire Git.

Capture d’écran d’un fichier supprimé marqué d’un D dans le répertoire de travail.

Vous souhaitez peut-être supprimer votre fichier de Git, mais sans le supprimer du disque. Pour ce faire, vous pouvez utiliser la commande rm --cached.

git rm --cached <filename>

Cette action supprime votre fichier de la zone d’indexation et exécute une suppression dans le dépôt Git, mais votre fichier reste sur votre disque. Le fichier redevient non suivi.

Annuler vos modifications

Si vous avez apporté des modifications à un fichier et que vous souhaitez récupérer la version précédente, vous pouvez utiliser la commande checkout. Cette commande récupère la version validée du répertoire Git et la place dans votre répertoire de travail.

git checkout <filename>