2014-01-19 1 views
6

Я продолжаю получать сообщение об ошибке: reject master-> master (fetch first), не удалось нажать некоторые ссылки .... потому что remote содержит работу, которой у вас нет локально.Почему Гит требует, чтобы я потянул, прежде чем надавить?

Я просто хочу, чтобы git перезаписывал файлы, находящиеся в настоящее время в репозитории, с новыми загрузками, поэтому я пытался использовать git push -u origin master, но эта ошибка продолжает появляться. Я новичок в git/github. Почему это происходит?

Я попытался объединить существующие файлы в репо с файлами на моем рабочем столе, но я продолжаю получать конфликты слияния. Не знаете, как с этим справиться.

ответ

6

мерзавец говорит вам, что вы должны сначала:

git fetch 

, а затем

git add /commit /push 

выборки похож тянуть, но тянуть объединить данные в файлах в локальном отделении, получать обновления только структура филиала и идентификатор.

Если выбор не работает, это означает, что кто-то еще совершил изменение, и теперь ваша версия должна быть обновлена ​​до выпуска

8

Вас попросят вытащить, прежде чем вы нажмете, потому что кто-то нажал изменения на сервере после вашего последнего нажатия, поэтому наша локальная копия и текущая копия сервера не синхронизированы. Pulling объединит удаленный экземпляр с вашим местным, который приведет их к синхронизации и позволит вам нажать.

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

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