Às vezes, uso a checkout -b
opção para criar uma nova ramificação, verificá-la ao mesmo tempo e configurar o rastreamento em um comando.
Em um novo ambiente, recebo este erro:
$ git checkout -b test --track origin/master
fatal: Cannot update paths and switch to branch 'test' at the same time.
Did you intend to checkout 'origin/master' which can not be resolved as commit?
Por que o Git não gosta? Isso costumava funcionar com o mesmo repositório.
git
git-checkout
marekful
fonte
fonte
origin/master
não é um ID de confirmação, ou seja, não é um ramo remoto válido. Ele aparece nagit branch -r
saída?Respostas:
Estranho: você precisa verificar seus controles remotos:
E verifique se
origin
está sendo buscado:Então:
(para ver se você buscou um
origin/master
ramo)Por fim, use em
git switch
vez de confusogit checkout
, com o Git 2.23+ (agosto de 2019).fonte
pull
e então este comando funcionou..git
diretório poderia estar de alguma forma corrompido?git remote -v
executado em um repositório git funciona.FWIW: Se você tiver um erro de digitação no nome da sua filial, receberá o mesmo erro.
fonte
git checkout -b origin mybranch
, em vez degit checkout -b mybranch
(extraorigin
)orgin/my-branch
vez deorigin/my-branch
. Perdi umi
e fiquei coçando a cabeça por um tempo para entender por que um velho aliado está se recusando a se dar bem. Erro de digitação foi realmente o problema.Você pode obter esse erro no contexto de, por exemplo, uma construção Travis que, por padrão, faz check-out do código
git clone --depth=50 --branch=master
. Que eu saiba, você pode controlar--depth
via,.travis.yml
mas não a--branch
. Como isso resulta em apenas uma única ramificação sendo rastreada pelo controle remoto, você precisa atualizar independentemente o controle remoto para rastrear as referências do controle desejado.Antes:
O conserto:
Depois de:
fonte
Essa coisa simples funcionou para mim!
Se disser que não pode fazer duas coisas ao mesmo tempo, separe-as.
fonte
Você pode seguir estas etapas quando se deparar com esse problema:
que gera isso:
Como você pode ver, a nova ramificação foi buscada remotamente.
3. Finalmente, faça o checkout da ramificação com este comando
Não é necessário dizer explicitamente ao Git para rastrear (usando --track ) o ramo com controle remoto.
O comando acima definirá a ramificação local para rastrear a ramificação remota desde a origem.
fonte
Se houver espaço em branco no seu ramo, você receberá esse erro.
fonte
Para mim, eu precisava adicionar o controle remoto:
então eu poderia buscar
fonte
Isso faz com que sua filial local não rastreie a filial remota. Como o ssasi disse, você precisa usar estes comandos:
Eu resolvi meu problema agora mesmo ....
fonte
Primeiro, você precisa
Fetch
do controle remoto (a ramificação específica) e, em seguida, pode criar um br local e rastreá-lo com essa ramificação remota usando seu comando (por exemplo,checkout
com -b e --track).fonte
Você deve ir no diretório do submódulo e executar
git status
.Você pode ver muitos arquivos foram excluídos. Você pode correr
git reset .
git checkout .
git fetch -p
git rm --cached submodules
// submoudles é o seu nomegit submoudle add ....
fonte
Você pode usar estes comandos: atualização remota do git, busca do git, verificação do git -b branch_nameA origem: branch_nameB
Eu acho que talvez seja por causa de sua filial local não pode rastrear filial remota
fonte