Introduction
🧑💻 Nouveau dans Git ou LabEx? Nous vous recommandons de commencer par le cours Quick Start with Git.
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.
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.
- 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"
- Créez et basculez sur une branche appelée
my-branch, créez un fichierhello.txtet 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"
- 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
- Revenez sur la branche
masteret fusionnez la branchemy-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.