2015-07-17 2 views
1

Я нахожусь в главе 5 «Рубинового учебника» Майкла Хартла. Я попытался объединить ветки, оказался на неправильной ветке и сел на кроличью нору. У меня довольно далеко, после того, как я сделал откат, но теперь это моя проблема снова.Git Merge Issues

****Captains-iMac:sample_app owner$ git pull origin master 
U app/views/layouts/application.html.erb 
U app/views/static_pages/home.html.erb 
U config/routes.rb 
U test/controllers/static_pages_controller_test.rb 
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 and make a commit.**** 

Основная ветка является той, которая в настоящее время подходит для меня. Любые указатели на полный новичок?

+0

Думаю, вам нужно вручную объединить файлы, чтобы избежать конфликтов. – Pavan

+0

Существует несколько способов решения вашей проблемы. Вопрос: вы беспокоитесь о своих местных изменениях? или вы не против отбрасывать их. Покажите свой вывод 'git status ' –

+0

На главном ветви Ваша ветка и' origin/master 'расходятся, и имеют 4 и 2 разных коммита, соответственно. (используйте «git pull», чтобы объединить удаленную ветку в вашу) У вас есть несвязанные дорожки. (исправить конфликты и запустить "мерзавец совершить") неслиянных пути: (использование "мерзавец добавить ...", чтобы отметить разрешение) \t как изменение: приложение/просмотров/макеты/application.html.erb \t и добавил: приложение/просмотров/static_pages/home.html.erb \t как изменение: конфигурации/routes.rb \t и добавил: тест/контроллеры/static_pages_controller_test.rb без изменений добавлены к совершению (использование «мерзавец добавить» и/или "git commit -a") – duwerq

ответ

3

Одна вещь, которую вы можете сделать, это использовать git checkout <file>, чтобы проверить зафиксированную версию файла (отбрасывая изменения), или git reset --hard HEAD, чтобы выбросить любые незафиксированные изменения для всех файлов.

ВНИМАНИЕ: Последний сбросит все ваши местные изменения. Сделайте это только в том случае, если вы не особенно заботитесь об изменениях, сделанных вами на местном уровне.

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

Надеюсь, это поможет вам.

+0

+1 для публикации процитировано @Tim Kos. Это похоже на ту же ошибку примерно на том же месте в tut. – Mauddev

+0

Спасибо Тиму за то, что помогли мне в моем первом посте здесь, я очень ценю это. – duwerq

1

Это были те файлы, которые были противоречивыми:

git pull origin master 
U app/views/layouts/application.html.erb 
U app/views/static_pages/home.html.erb 
U config/routes.rb 
U test/controllers/static_pages_controller_test.rb 
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 and make a commit. 

Здесь было именно то, что я напечатал, чтобы исправить это:

Капитаны-ИМАК: владелец sample_app $ мерзавец добавить приложение/просмотров/макеты/приложения. html.erb Капитаны-ИМАК: sample_app владелец $ мерзавец добавить приложение/просмотров/static_pages/home.html.erb Капитаны-ИМАК: sample_app владелец $ мерзавец добавить конфигурационный/routes.rb Капитаны-ИМАК: sample_app владелец $ мерзавец добавить тест/контроллеры/static_pages_controller_test.rb Captains-iMac: owner_app owner $ git commit -m «разрешенные конфликты слияния» [master 891a992] разрешенные конфликты слияния