Ho clonato un repository, dopo il quale qualcun altro ha creato un nuovo ramo, sul quale mi piacerebbe iniziare a lavorare. Ho letto il manuale e mi sembra molto semplice. Stranamente non funziona e tutti i post che ho trovato suggeriscono che sto facendo la cosa giusta. Quindi mi sottoporrò all'eccitazione, perché ci deve essere ovviamente qualcosa di sbagliato in questo:
L'azione corretta sembra essere
git fetch
git branch -a
* master
remotes/origin/HEAD --> origin/master
remotes/origin/master
git checkout -b dev-gml origin/dev-gml
A questo punto c'è un problema, per qualche motivo dopo git fetch
che non riesco a vedere il ramo remoto dev-gml. Perchè no? Se clonerò il repository di recente, è lì, quindi sicuramente esiste il ramo remoto:
$ mkdir ../gitest
$ cd ../gitest
$ git clone https://github.com/example/proj.git
Cloning into proj...
remote: Counting objects: 1155, done.
remote: Compressing objects: 100% (383/383), done.
remote: Total 1155 (delta 741), reused 1155 (delta 741)
Receiving objects: 100% (1155/1155), 477.22 KiB | 877 KiB/s, done.
Resolving deltas: 100% (741/741), done.
$ cd projdir
$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/dev-gml
remotes/origin/master
Ho provato git update
, git pull
, git fetch --all
, git pretty-please
in tutte le possibili permutazioni ...
+refs/heads/master:refs/remotes/origin/master
con master
invece di*
git config --get remote.origin.fetch
produce? In caso contrario+refs/heads/*:refs/remotes/origin/*
, probabilmente dovrebbe essere.