Utilisez theirs avec Git Merge
-
Utilisez la commande
git merge
avectheirs
dans Git -
Utilisez
--strategy-option
pour résoudre les conflits dans Git - Utiliser une branche temporaire pour fusionner dans Git
Lors du développement de logiciels avec l’outil Git, vous pouvez créer différentes branches pour différentes fonctionnalités. Mais il peut y avoir des conflits entre les différentes branches.
Cet article explique comment utiliser la commande git merge
avec l’option theirs
pour résoudre les conflits.
Utilisez la commande git merge
avec theirs
dans Git
La commande git merge
peut combiner deux ou plusieurs historiques de développement. Cependant, cette fusion ne peut parfois pas se faire en raison de conflits entre branches.
Les fichiers dans ours
ou theirs
doivent être supprimés pour résoudre ce conflit.
Le ours
fait référence à la branche de travail d’origine avec l’autorité de l’historique Git, et le theirs
fait référence à la branche qui contient les nouveaux commits appliqués.
Vous pouvez utiliser le git merge -s ours
pour annuler les modifications apportées à ours
. Cette commande annule toutes les modifications de l’autre branche et laisse les fichiers de votre branche inchangés.
Lors de la prochaine fusion à partir de l’autre branche, Git ne prendra en compte que les modifications apportées à partir de maintenant. Cependant, l’option -s
ne peut pas être utilisée avec theirs
.
Utilisez --strategy-option
pour résoudre les conflits dans Git
Alternativement, nous pouvons utiliser theirs
avec l’option -X
ou --strategy-option
.
La principale différence entre les options -X
et -s
est que -X
effectue une fusion récursive régulière, résolvant tous les conflits en utilisant le côté choisi, tandis que -s
modifie la fusion pour ignorer complètement l’autre côté.
La commande suivante résout tous les conflits en utilisant le theirs
.
git merge -X theirs branchname
Utiliser une branche temporaire pour fusionner dans Git
Utilisez les commandes ci-dessous pour fusionner test2
dans test1
extrait.
Passez à la branche test1
.
git checkout test1
Fusionnez le commit sans conflits. Le contenu de ours
sera supprimé plus tard.
git merge -s ours test2
Créez une branche temporaire.
git branch temp
Définissez HEAD
avec la commande git reset
. Il récupère le contenu de la branche test2
.
git reset --hard test2
Réinitialisez le commit fusionné mais conservez le contenu avec la commande git reset --soft
.
git reset --soft temp
Modifiez le contenu du commit fusionné avec le contenu de test2
.
git commit --amend
Supprimez la branche temporaire que nous avons créée précédemment.
git branch -D temp
Vous pouvez voir que le commit fusionné ne contient que le contenu de test2
.
git diff HEAD test2
Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.
LinkedIn