J'ai commencé Eclipse EGit. Dans certains scénarios, ce n'est vraiment pas complet.
J'ai un fichier local, par exemple. pom.xml changé. Sur le serveur git, ce fichier a été modifié. Je fais pull
, EGIl dit:
Conflit de sortie avec les fichiers:
c'est-à-dire que tirer s'arrête (fetch
est terminé, mais pas merge
), c'est OK. Cependant la prochaine est une mauvaise expérience.
Je synchronise l'espace de travail, mets de côté mes modifications et les rend identiques à FETCH_HEAD Mais EGit ne veut pas continuer. Je remplace le fichier par la révision HEAD. Mais EGit ne veut toujours pas continuer.
Quelle opération utilisateur attendue standard devrait être avec EGit après la résolution du conflit?
METTRE À JOUR:
Je added to index
, puis marked as Merged
-> pull
ne peut toujours pas passer.
Lorsque je sélectionne Merge
je reçois le dialogue
Je ne peux pas valider le fichier car il ne figure pas dans la liste des fichiers modifiés.
Situation:
Solution:
Voici comment j'ai résolu mon problème:
Pull
du maître.METTRE À JOUR:
Comme Hugo Zuleta a fait remarquer à juste titre, vous devez être prudent lors de l'application. Il dit que il pourrait finir par dire que la branche est à jour, mais les modifications ne sont pas affichées, ce qui entraîne une désynchronisation de la branche.
Votre fichier de répertoire de travail local doit être fusionné
Si une erreur survient pour ".settings/language.settings.xml" ou tout autre fichier de ce type, vous n'avez pas besoin de git.
Désormais, si la liste de fichiers intermédiaires est vide et la liste de fichiers non gérés, tous les fichiers sont marqués comme étant ignorés. Vous pouvez tirer. Sinon, suivez les autres réponses.
Je suppose que la meilleure façon de faire est la suivante:
Voilà comment je résous le mien, chaque fois que cela se produit.
Une fois que vous avez reçu de la disgracieuse CheckoutConflictException d’Eclipse, le bouton Eclipse-Merge Tool est désactivé.
Git a besoin de tous vos fichiers ajoutés à l'index pour activer la fusion.
Donc, pour fusionner vos modifications et les valider, vous devez d'abord ajouter vos fichiers à l'index "Ajouter à l'index" et "Valider" les sans "Push" . Ensuite, vous devriez voir une requête en attente et une demande Push en attente dans Eclipse. Vous voyez cela dans une flèche vers le haut et une flèche vers le bas.
Si tous les fichiers en conflit sont dans la validation, vous pouvez "tirer" à nouveau. Ensuite, vous verrez quelque chose comme:
\ <<<<<<<HEAD Version du serveur \.= ======= Version locale >>>>>> Branche 'de' git
Ensuite, vous pouvez soit le modifier à l'aide de l'outil de fusion, qui est maintenant activé, soit simplement effectuer la fusion à la main directement dans le fichier. Dans la dernière étape, vous devez ajouter à nouveau les fichiers modifiés à l'index et "Commit and Push" them.
Vérification terminée!