Désactiver le regroupement rapide

GitGitBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Git est un puissant système de contrôle de versions qui permet aux développeurs de collaborer efficacement sur des projets. L'un des avantages de Git est le regroupement rapide, qui permet à Git de fusionner automatiquement les branches qui n'ont pas de commits divergents. Cependant, cette fonction peut parfois poser des problèmes, en particulier lorsqu'on travaille sur de grands projets avec de nombreux contributeurs. Dans ce laboratoire, vous allez apprendre à désactiver le regroupement rapide par défaut.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/SetupandConfigGroup(["Setup and Config"]) git/SetupandConfigGroup -.-> git/config("Set Configurations") subgraph Lab Skills git/config -.-> lab-12728{{"Désactiver le regroupement rapide"}} end

Désactiver le regroupement rapide

Par défaut, Git utilise le regroupement rapide pour fusionner les branches qui n'ont pas de commits divergents. Cela signifie que si vous avez une branche sans nouveaux commits, Git déplacera simplement le pointeur de la branche dans laquelle vous effectuez la fusion vers le dernier commit de la branche à partir de laquelle vous effectuez la fusion. Bien que cela puisse être utile dans certains cas, cela peut également poser des problèmes, en particulier lorsqu'on travaille sur de grands projets avec de nombreux contributeurs. Par exemple, si deux développeurs travaillent sur la même branche et apportent tous les deux des modifications, le regroupement rapide peut entraîner des conflits difficiles à résoudre.

Pour désactiver le regroupement rapide, utilisons le référentiel à partir de https://github.com/labex-labs/git-playground.

  1. Clonez le référentiel, accédez au répertoire et configurez l'identité :
git clone https://github.com/labex-labs/git-playground
cd git-playground
git config --global user.name "votre-nom-d'utilisateur"
git config --global user.email "votre-email"
  1. Créez et basculez sur une branche appelée my-branch, créez un fichier hello.txt et ajoutez "hello,world" à celui-ci, ajoutez-le à la zone de préparation et validez-le avec le message "Ajouté hello.txt" :
git checkout -b my-branch
echo "hello,world" > hello.txt
git add.
git commit -m "Ajouté hello.txt"
  1. Exécutez la commande suivante pour désactiver le regroupement rapide :
git config --add merge.ff false

Cela désactivera le regroupement rapide pour toutes les branches, même si cela est possible. Vous pouvez utiliser le drapeau --global pour configurer cette option globalement :

git config --global --add merge.ff false
  1. Revenez sur la branche master et fusionnez la branche my-branch, enregistrez et quittez sans modifier le texte :
git checkout master
git merge my-branch

Maintenant, Git créera toujours un commit de fusion, même si il est possible de regrouper rapidement :

commit 6e17a776ab51a89ace069614b0caf1c07915a92c (HEAD -> master)
Merge: ec5ea6d 6d7de91
Author: xiaoshengyunan <@users.noreply.github.com>
Date:   Mon Jul 17 13:30:44 2023 +0800

    Fusionner la branche'my-branch'

Récapitulatif

Dans ce laboratoire, vous avez appris à désactiver le regroupement rapide par défaut. Cela peut être utile lorsqu'on travaille sur de grands projets avec de nombreux contributeurs, car cela peut aider à prévenir les conflits et à faciliter la gestion des modifications. En utilisant la commande git config, vous pouvez désactiver le regroupement rapide pour toutes les branches, même si cela est possible.