Может проверять и отслеживать git ветку, но не может тянуть

11503
Mike Lentini

Итак, у нас есть ветка в нашем репозитории git creative_market. Я запускаю команду, git checkout --track origin/creative_marketкоторая работает нормально. Все изменения, которые должны быть на creative_marketветке присутствуют. Однако, если я бегу, git pullя получаю эту ошибку:

Ваша конфигурация указывает на слияние с ref 'creative_market' с пульта, но ни один такой ref не был получен.

Кроме того, если git pull origin creative_marketя получу:

фатальный: не удалось найти удаленный реф

фатальный: удаленный конец неожиданно завис

Бег git branch -aнаглядно показывает:

пульты дистанционного управления / происхождение / creative_market

И мой .git/configфайл показывает:

[branch "creative_market"] remote = origin merge = refs/heads/creative_market 

Который совпадает со всем остальным в моем .git/configфайле.

Я в тупике Есть идеи?

5

2 ответа на вопрос

6
Stephen Jennings

Получаемое сообщение может указывать на то, что creative_marketветки больше не существует в удаленном хранилище. Может ли это быть так?

Вы можете исправить это с помощью следующих команд:

git checkout --track origin/creative_market git push origin creative_market 

Еще один, немного более длинный способ доказать, что происходит, это сделать следующее:

Сначала сделайте резервную копию команды git branch creative_market2 origin/creative_market. Затем запустите git fetch -pдля удаления веток удаленного отслеживания, которые больше не существуют на удаленном. Если ветка действительно была удалена с пульта, вы увидите что-то вроде следующего:

[my-repository]$ git fetch -p x [deleted] (none) -> origin/creative_market 

Чтобы заново создать ветку в удаленном репозитории, просто вставьте в нее локальную ссылку:

git push --set-upstream origin creative_market2:creative_market 
Спасибо Стивен. Я считаю, что вы правы, что ветки больше не существует, поэтому я исправил ее, выполнив `git checkout --track origin / creative_market`, а затем протолкнув его через` git push origin creative_market`, который, похоже, все исправил. Я предполагаю, что ваше решение будет работать, поэтому я отмечу его как правильное. Еще раз спасибо! Mike Lentini 12 лет назад 0
@MikeLentini Это гораздо быстрее исправить, я добавил его в свой ответ. Благодарю. Stephen Jennings 12 лет назад 0
0
user349410

Prune the local remote copy of the branch

git fetch -p 

Remote the upstream of the local branch

git branch --unset-upstream 

Похожие вопросы