Comment faire pour résoudre automatiquement un Git conflit en prenant la version dans la branche?

Supposons que je reçois un conflit de fusion sur foo/bar.txt lors de l'exécution de cette:

$ git checkout A
$ git merge B

J'aimerais résoudre automatiquement les conflits en prenant foo/bar.txt de la direction de A. (je sais ce que je fais, et je n'ai besoin de cela. La version dans la branche B est fausse, et je ne se soucient pas de perdre les modifications dans l'arbre de travail dans ce cas.) Il semble que je peux le faire en exécutant ces commandes:

$ git reset    foo/bar.txt
$ git checkout foo/bar.txt

Est-il plus simple, en une seule commande la solution?

Malheureusement, ces commandes modifient foo/bar.txt même si il n'y a pas de conflit, et je n'en veux pas. Si il n'y a pas de conflit, je veux voulez garder foo/bar.txt quel que soit leur état git merge B a gauche.

J'ai donc besoin d'un shell Unix commande, ce qui permettrait de détecter si il y a un conflit dans foo/bar.txt, et si il y est, il permettrait de résoudre le conflit en prenant la version de foo/bar.txt de la branche courante. Il ne faisait rien d'autre, c'est à dire qu'il ne serait pas modifier d'autres fichiers, il ne serait pas valider les modifications, et il ne serait pas changer foo/bar.txt si il n'y a pas de conflit dans ce fichier.

OriginalL'auteur pts | 2013-01-06