2015-07-07 3 views
1

Я создал новый проект в хранилище stash, а также создал несколько ветвей в stash для этого нового проекта. Я могу клонировать проект от мерзавца Баш, но когда я пытаюсь проверка конкретной отрасли я получаю ниже ошибкиgit checkout branchname не работает

git checkout feature/Project_branch 

error: pathspec 'feature/Project_branch' did not match any file(s) known to git. 

, но если я использую, как показано ниже, то его работы

git fetch origin 

git checkout feature/Project_branch 

Есть и другие проекты который я использовал для проверки, он работал без использования git fetch origin command, но в моем новом корпусе репозитория его бросали выше ошибки.

Может ли кто-нибудь, пожалуйста, помочь мне в неподтверждении, есть ли какая-либо конфигурация, которую я должен сделать, чтобы напрямую проверить ветку с помощью git checkout без использования команды git fetch?

+2

Только совет: попробуйте 'git branch', чтобы получить список доступных ветвей. Требование 'git fetch' может зависеть от происхождения ветви. Когда ветка была создана удаленно (коллега, вилка проекта), вам, вероятно, нужно сначала ее забрать. –

ответ

0

Все git fetch делает загрузить информацию в репозиторий, что вы уже не имеете. Это означает, что когда вы впервые пытались переключиться на функцию/Project_branch, вы еще не загрузили ее. Вы можете получить его двумя способами:

1 - По оригиналу git clone все ветви, связанные с удаленным репозиторием, будут загружены и использованы в вашем локальном репозитории git.

2 - Если новая ветвь добавляется в удаленный репозиторий после вашего git clone, вы должны выполнить git fetch или аналогичные действия, такие как git pull для того, чтобы получить доступ к отрасли.

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

Однако с этого момента, вы должны не нужно запускать git fetch для переключения между мастером и функцией/Project_branch.

Примечание: git branch перечисляет все филиалы, которые у вас имеются в вашем местном репо.

1

Я думаю, что вам не хватает опции -t в оформлении заказа.

Попробуйте вместо этого:

$ git checkout -t feature/Project_branch 

Это создаст филиал под названием Project_branch, что отслеживание feature/Project_branch

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