107 votes

Forcer Git à toujours choisir la version la plus récente lors d'une fusion ?

Supposons que je merge git et il y a un conflit de fusion.

Ma question est la suivante : comment puis-je forcer git à toujours choisir la version la plus récente du code en conflit afin de ne pas avoir à résoudre le conflit à la main ?

0 votes

0 votes

Mais je veux faire une fusion (pas écraser les commits), mais en plus résoudre les conflits automatiquement.

199voto

Renato Zannon Points 5478

Ce n'est pas exactement la version "la plus récente", mais vous pouvez dire à git de toujours préférer la version de la branche courante en utilisant git merge branch -X ours ou pour préférer la version de la branche en cours de fusion, en utilisant git merge branch -X theirs .

Desde man git-merge :

le nôtre :

Cette option force les hunks conflictuels à être résolus proprement en favorisant notre version. Les changements de l'autre arbre qui ne sont pas conflit avec notre version sont reflétées dans le résultat de la fusion. Pour un fichier binaire, le contenu entier est pris de notre côté.

leurs :

C'est le contraire de "notre".

9 votes

ours - theirs ! ! Il suffit de le dire et on comprend ce que fait la commande ! J'adore Git ! :D

14 votes

Note : si vous avez déjà utilisé git merge branch vous devrez git merge --abort avant de pouvoir le faire.

1 votes

Ça ne marche pas pour moi. La fusion est toujours annulée. error: The following untracked working tree files would be overwritten by merge: Je ne sais même pas pourquoi ces fichiers sont dans cette branche en premier lieu, mais ils devraient être écrasés, et git refuse.

21voto

wolfgang Points 200

J'utilise ceci,

git fetch --prune
git reset --hard origin/master

0voto

SmoothKen Points 1

Jetez un coup d'œil à ma réponse dans Synchronisation automatique basée sur l'horodatage de Git

Essentiellement, nous devons faire une comparaison manuelle des horodatages. Je ne pense pas que git merge a un utilitaire intégré pour cela.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X