Je sais comment fusionner les modifications à l'aide de vimdiff, mais, en supposant que je sache simplement que le fichier entier est bon à conserver ou à jeter, comment faire?
Je ne veux pas ouvrir vimdiff pour chacun d'eux, je veux changer une commande qui dit «garder local» ou «garder à distance».
EG: J'ai obtenu une fusion avec des fichiers marqués comme modifiés parce que quelqu'un l'a ouvert sous Windows, en changeant l'EOL, puis s'est engagé. Lors de la fusion, je souhaite simplement conserver ma propre version et supprimer la sienne.
Je suis également intéressé par le contraire: j'ai foiré beaucoup de temps et je veux accepter le fichier distant, en rejetant mes modifications.
git version 1.8.4
si cela compte.Cette approche semble plus simple, évitant d'avoir à sélectionner individuellement chaque fichier:
ou
Copié directement de: Résoudre les conflits de fusion Git en faveur de leurs modifications lors d'un pull
la source
git checkout {branch-name} -- {file-name}
Cela utilisera le fichier de la branche de choix.
J'aime cela parce que la
posh-git
saisie semi - automatique fonctionne très bien avec cela. Il supprime également toute ambiguïté quant à la branche distante et à la section locale. Et--theirs
ça n'a pas marché pour moi de toute façon.la source
Pour le truc de fin de ligne, reportez-vous à
man git-merge
:Assurez-vous d'ajouter
autocrlf = false
et / ousafecrlf = false
au clone Windows (.git / config)Utiliser git mergetool
Si vous configurez un mergetool comme celui-ci:
Ensuite, un simple
Fera le travail
Utilisation de commandes git simples
Dans d'autres cas, je suppose
devrait faire l'affaire
Modifiez pour faire l'inverse (parce que vous avez foiré):
la source
git checkout remote/branch_to_merge -- path/to/myfile.txt
fonctionne comme un charme tout en résolvant un conflit de fusion. (git 1.7.1)