Flux de travail Git

Dans ce chapitre, nous présenterons le flux de travail de Git.

Le diagramme suivant montre le flux de travail de Git :

Nous pouvons imaginer le flux de travail de Git comme unFaire ses devoirs et les remettre au professeurprocessus. En combinant avec le diagramme ci-dessus, nous pouvons diviser ce flux de travail en quatre parties principales :

1. Répertoire de travail —— votre bureau

c'est vousfichiers réellement modifiésendroit où vous écrivez du code, effectuez des suppressions et des modifications.

  • action: Vous écrivez de nouvelles fonctionnalités ou corrigez des bogues ici.

2. Zone de préparation —— votre panier pour le courrier sortant

Lorsque vous estimez que votre travail est presque terminé, vous le mettez dans un panier, prêt à être empaqueté.

  • Commandes clés:git add
  • Signification: Dites à Git que vous confirmez que ces modifications doivent être validées, et demandez-lui de les mémoriser pour le moment.

3. Dépôt local —— votre coffre-fort personnel

Vous empaquetez les éléments du panier, attachez une étiquette (message de commit), et l'enfermez dans votre propre coffre-fort.

  • Commandes clés:git commit
  • Signification: Les modifications font officiellement partie de l'historique du projet. Même si vous faites des erreurs plus tard, vous pouvez toujours les restaurer à partir d'ici.

4. Dépôt distant —— la boîte de réception de votre enseignant (par ex., GitHub/GitLab)

Enfin, vous envoyez le code du coffre-fort vers un serveur distant via le réseau, afin que d'autres puissent le consulter ou collaborer.

  • Commandes clés:git push
  • Signification: Sauvegardez le code et partagez la progression avec l'équipe.

Explication du point de connaissance

  • git stash (zone de stash): Vous êtes à mi-chemin de votre travail, et soudain vous devez travailler sur une autre tâche urgente, mais vous ne voulez pas valider le travail inachevé. À ce stade, vous pouvez d'abord utiliserstashpour remiser le code dans un tiroir, puis le ressortir et continuer à travailler dessus une fois que vous avez terminé (pop)。
  • git pull (pull): Vérifiez si d'autres ont soumis un nouveau travail du côté de l'enseignant (dépôt distant), et synchronisez-le directement sur votre bureau.
  • git & merge: Vérifiez d'abord quelles mises à jour le dépôt distant possède (fetch), après avoir confirmé qu'il n'y a pas de problèmes, fusionnezmerge) dans votre propre code.

Bref résumé :
Modifier le code →add(mettre dans le panier) →commit(stocker dans la boîte) →push(envoyer vers un endroit distant)


Commande

1. Cloner le dépôt

Si vous souhaitez participer à un projet existant, vous devez d'abord cloner le dépôt distant sur votre machine locale :

git clone https://github.com/username/repo.git
cd repo

2. Créer une nouvelle branche

Pour éviter de développer directement sur la branche main ou master, vous créez généralement une nouvelle branche :

git checkout -b new-feature

3. Répertoire de travail

Modifiez le code, ajoutez de nouveaux fichiers ou supprimez les fichiers inutiles dans le répertoire de travail.

4. Indexer les fichiers

Ajoutez les fichiers modifiés à la zone de préparation, afin de pouvoir passer à l'opération de commit suivante :

git add filename
# 或者添加所有修改的文件
git add .

5. Valider les modifications

Validez les modifications indexées dans le dépôt local et ajoutez un message de commit :

git commit -m "Add new feature"

6. Récupérer les dernières modifications

Avant de pousser les modifications locales, il est préférable de récupérer les dernières modifications depuis le dépôt distant pour éviter les conflits :

git pull origin main
# 或者如果在新的分支上工作
git pull origin new-feature

7. Pousser les modifications

Poussez les commits locaux vers le dépôt distant :

git push origin new-feature

8. Créer une Pull Request (PR)

Créez une Pull Request sur GitHub ou d'autres plateformes d'hébergement pour inviter les membres de l'équipe à examiner le code. Une fois la PR fusionnée, vos modifications seront fusionnées dans la branche principale.

9. Fusionner les modifications

Une fois la PR examinée et fusionnée, vous pouvez fusionner la branche principale du dépôt distant dans la branche locale :

git checkout main
git pull origin main
git merge new-feature

10. Supprimer la branche

Si la branche de fonctionnalité n'est plus nécessaire, vous pouvez la supprimer :

git branch -d new-feature

Ou supprimez une branche du dépôt distant :

git push origin --delete new-feature
autres extensions