web-dev-qa-db-fra.com

Git pull - S'il vous plaît déplacez ou supprimez-les avant de pouvoir fusionner

J'essaie de faire un git pull Origin master à partir de mon serveur mais je continue à avoir l'erreur:

Please move or remove them before you can merge.

Il n'y a pas de fichiers non suivis, mais il semble qu'il y ait des problèmes avec les fichiers ignored pour une raison quelconque.

J'ai essayé d'exécuter un git clean -nd pour voir ce qui serait supprimé et une liste complète de fichiers qui sont ignorés dans .gitignore.

Comment puis-je résoudre ce problème afin que je puisse faire un pull?

30
Brett

Apparemment, les fichiers ont été ajoutés dans un référentiel distant, quel que soit le contenu du fichier .gitignore dans le fichier Origin.

Comme les fichiers existent dans le référentiel distant, git doit également les extraire de votre arbre de travail local et se plaint par conséquent que les fichiers existent déjà.

.gitignore est utilisé uniquement pour analyser les fichiers nouvellement ajoutés, il n'a rien à voir avec les fichiers déjà ajoutés.

La solution consiste donc à supprimer les fichiers de votre arbre de travail et à extraire la dernière version. Ou bien la solution à long terme consiste à supprimer les fichiers du référentiel s'ils ont été ajoutés par erreur.

Je viens juste de faire face au même problème et de le résoudre en utilisant les éléments suivants.

git clean -d -f

puis essayez git pull Origin master

Vous pouvez afficher les autres options de git clean en tapant git clean -help.

55
Neha

Pour supprimer et supprimer toutes les modifications git clean -d -f

3
DURGESH Chaurasiya

S'il y a trop de fichiers à supprimer, c'est vraiment un cas pour moi. Vous pouvez également essayer la solution suivante:

1) chercher

2) fusionner avec une stratégie. Par exemple celui-ci fonctionne pour moi:

git.exe merge --strategy=ours master
1
David

Ajoutez un fichier au contrôle de source si nécessaire, puis fusionnez le développement. Ça marche :)

0
Bhauraj Biradar

Si vous obtenez une erreur comme 

  • branche master -> FETCH_HEAD error: Les fichiers d’arbre de travail non suivis suivants seraient remplacés par la fusion: src/dj/abc.html S'il vous plaît déplacer ou les supprimer avant de fusionner . Abandonner

Essayez de supprimer le fichier ci-dessus manuellement (Attention). Git fusionnera ce fichier depuis la branche principale.

0
Deepak G