2013-03-27 3 views
0

Я попытался «git pull» из репо, тогда я получаю сообщение об ошибке: pull невозможно, потому что у вас есть несвязанные файлы, но я немного искал в Интернете, «git pull = git fetch + git merge ", не так ли?получить ошибки после git pull

я использовал Git тянуть, то я получаю следующие сообщения

U Assembly-CSharp.pidb 
    U Assembly-UnityScript.pidb 
    M Assets/testing.unity 
    U Library/assetDatabase3 
    U Temp/Undo55e9beda8401848509d9e3bb5d5fe513 
    U Temp/Undof0c17c0ba33904b16a1698563ff5302c 
    U Temp/__EditModeScene 
    U wiisummoner-csharp.sln 
    U wiisummoner.sln 
Pull is not possible because you have unmerged files. 
Please, fix them up in the work tree, and then use 'git add/rm <file>' 
as appropriate to mark resolution, or use 'git commit -a'. 

выше сообщение об ошибке, то я пытался «GIT Объединить», я получаю ошибку "слияние не представляется возможным, потому что у вас есть неслитые файлы ». это так запутанно. Кто-нибудь знает, в чем проблема? Все, что я хочу, это просто вытащить из репо.

+0

Вы _still_ Арен» t, обеспечивающее полное сообщение об ошибке. – Arafangion

+0

Что вы имеете о сообщении об ошибке, указывает, что вы находитесь в середине слияния, возможно, в результате предыдущего git pull. Разрешите слияние, затем выполните push. – Arafangion

ответ

2

Как вы заявляете, «git pull» эквивалентен «git fetch + git merge».

Если вы не можете выполнить «git merge», логически следует, что вы не можете выполнить «git pull», потому что он будет выполнять «git merge» в этом процессе.

Вероятно, у вас есть собственные файлы в Temp, или ваши локальные файлы * .pidb могут уже существовать и конфликтуют с ветвью вверх по течению.

Ввод этих файлов в систему контроля версий просто задает проблемы, если вы не хотите изменять и сопоставлять различия с этими файлами (и вы действительно этого не делаете ...), я предлагаю вам отказаться от изменений в верхнем течении и сообщить им почини это.

Кстати, для записи, это то, что полный вывод мерзавца тянуть выглядит, я сделал простой репозиторий тест, чтобы продемонстрировать:

$ git --version 
git version 1.7.12.4 (Apple Git-37) 
$ git pull 
Updating e78f298..3067a12 
error: The following untracked working tree files would be overwritten by merge: 
    three.txt 
Please move or remove them before you can merge. 
Aborting 

В этом случае, ответ очень прост:

  • Переместить three.txt в другое место. (Может быть, сделать git stash, чтобы сделать это)
  • Выполните git pull

Затем, если ваша версия 'three.txt' был значительным, дополнительно выполняют:

  • Move three.txt назад. (Если вы сделали git stash, возможно, вы могли бы сделать git stash pop
  • Попытки примирить различия, так что вы не просто неумело перезапись изменения другого человека.
  • Commit новых изменений.
0

Вы должны копить изменения и совать их после того, как

git stash 
git pull 
git stash pop 

Вы могли бы иметь конфликты потом, что вы можете исправить вручную.

Альтернатива, если имеет смысл создать фиксацию (т. Е. Вы закончили с изменениями, которые вы делаете), вы можете просто зафиксировать свои изменения и потянуть после этого.

+0

Я пробовал это, я получаю сообщения типа «xxxx: need merge» и «xxxx: unmerged» – Qin

+0

Вы должны предоставить полные команды, которые вы использовали, и весь вывод, вы можете отредактировать свой вопрос. –

+0

Я сделал git commit -a -m «abc», прежде чем использовать git pull, и я не понимаю, что мне нужно исправить вручную. – Qin

Смежные вопросы