Tutoriel Git - Flux de travail Git
Comme nous venons de l’apprendre, l’ajout d’un fichier ou sa livraison est essentiellement un processus en deux étapes.
-
git add
Ajoutez les fichiers à la zone de transit. Comme la commande ci-dessous,
$ git add test1.txt
file1.txt
est ajouté à partir de votre copie de travail à la zone de transit et il est prêt à être commité dans le dépôt. Chaque fois que nous créons un fichier, il est sur notre copie de travail, il est sur l’ordinateur local et après la commandegit add
, il va dans la zone de transit. -
git commit
Il prend tous les fichiers de votre zone de transit pour les pousser vers le dépôt.
$ git commit -m "commit message"
Nous ajoutons normalement un message pour décrire ce qui est livré, comme ce que nous avons changé dans les fichiers ou les projets, donc nous pourrions obtenir les informations de log de ce commit dans le futur.
git add
Après avoir modifié un fichier et l’avoir enregistré, ce fichier sur notre ordinateur est différent du fichier dans notre dépôt, car dans le dépôt, il est toujours le même contenu avant cette modification. Si vous tapez git status
, vous pourriez voir que Git sait que votre fichier a été mis à jour.
$ git status
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: test1.txt
no changes added to commit (use "git add" and/or "git commit -a")
Comme suggéré par Git, nous utilisons git add
pour mettre à jour les fichiers qui seront livrés.
$ git add test1.txt
Maintenant, vous pouvez commiter ce fichier mis à jour depuis la zone de transit vers le dépôt.
Parfois, nous avons mis à jour plusieurs fichiers et bien sûr, nous pouvons ajouter des fichiers de cette façon,
$ git add test1.txt test2.txt test3.txt
Mais cela vous apporte un gros mal de tête si vous avez un tas de fichiers ou si le nom du fichier est trop long. Git a un raccourci pour ajouter tous les fichiers mis à jour et les fichiers non-tracés à la zone de transit,
$ git add .
Ici, .
signifie tous les fichiers qui sont différents du dépôt.
git commit
Nous avons montré comment utiliser git commit
lorsque nous avons introduit d’autres fonctionnalités de Git. Fondamentalement, git commit
pousse la zone de transit vers le dépôt, et il est fortement conseillé d’ajouter le message de commit pour décrire ce que vous avez changé pour ce commit spécifique. Vous pouvez récupérer toutes les informations de votre journal de commit avec la commande git log
.
Livrer directement au dépôt
Avant de s’engager, nous devons ajouter des changements à la zone de transit. Ensuite, nous pourrions les commettre. Mais il n’est pas vraiment nécessaire de les ajouter à la zone de transit. D’abord, parce que nous savons que ces changements nous voulons dans notre projet final, dans notre dépôt ou sur le serveur pour que tout le monde ait des fichiers mis à jour.
Donc ce que nous pourrions faire est de vérifier l’état de Git en premier, pour que nous sachions ce qui est modifié dans la copie de travail. Ensuite, nous pourrions utiliser directement git commit
avant même d’ajouter ces modifications dans la zone de transit.
$ git commit -a -m "commit message here."
Ce que nous faisons ici, c’est que nous utilisons un raccourci au lieu de l’ajouter à la staging area. Mais cela n’est utile que dans certaines situations, chaque fois que vous utilisez cette commande, vous devez être prudent car elle va prendre tout ce qui se trouve dans votre copie de travail et les pousser directement dans le dépôt.
Amender un commit
On aurait pu arriver à une situation après un commit, on trouve une coquille ou d’autres petits défauts dans le code. Bien sûr, vous pourriez réviser les codes et commiter les changements dans le dépôt à nouveau. Mais ce que nous pourrions faire est de réécrire ce dernier commit, et le dernier commit sera réécrit avec la nouvelle modification.
Le drapeau --amend
qui suit git commit
indique à Git que ce commit remplacera le commit précédent qui ne sera plus dans votre branche de travail.
$ git commit --amend -m "new information is updated"
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook