2010-05-24 4 views
0

Je crée une branche dans mon référentiel maître (192.168.1.2). Et dans mon autre ordinateur, je l'ai fait « $ git pull --rebase », je voisComment voir une branche créée en master

Unpacking objects: 100% (16/16), done. 
From git+ssh://[email protected]/media/LINUXDATA/mozilla-1.9.1 
62d004e..b291703 master  -> origin/master 
* [new branch]  improv -> origin/improv 

Mais quand je fais une «branche git dans mon dépôt local, je ne vois que 1 branche et je l'ai fait ' $ git checkout impro '

$ git branch            
* master 
$ git checkout improv         
error: pathspec 'improv' did not match any file(s) known to git. 
Did you forget to 'git add'? 

Répondre

2

Essayez $ git fetch origin premier. A part cela, votre version git pourrait ne pas être aussi frais que vous devriez faire $ git checkout --track -b improv origin/improv

+0

+1 pour utiliser moins de mots que moi. > _> –

1

à la caisse et créer la branche ainsi que du maître, vous devez faire ceci:

git checkout origin/master -b improv 

Pour afficher la liste des branches à distance dépôt, vous devez utiliser

git branch -r 

ou tout simplement utiliser

git branch -a 

pour lister toutes les branches, y compris celles distantes et locales.

+0

Si votre branche actuelle est déjà 'master', vous pouvez raccourcir la commande checkout à simplement' git checkout -b improv'. –

0

La nouvelle branche, improv, existe sur l'origine (votre référentiel maître) mais n'est pas tirée lors de l'édition $git pull command Ceci est voulu par la conception. Sur votre machine locale, vous voulez probablement faire quelque chose comme $git checkout --track origin/improv pour tirer le brach et l'ajouter à votre liste de piste locale.

2

Dans votre cas, vous avez deux problèmes:

  • votre copie de travail locale est pas à jour, et
  • localement, vous ne disposez pas d'une branche improv qui suit la copie sur le serveur (similaire à master pistes origin/master).

Tout d'abord, vous devez exécuter:

$ git fetch 

qui mettra à jour vos refs à distance (au niveau local, un arbitre à origin/improv apparaît). Ensuite, exécutez:

$ git checkout -b improv --track origin/improv 

Pour créer une nouvelle branche locale, improv, qui suit la branche sur le serveur, origin/improv. (Cette branche sera mise à jour sur votre machine locale.) Votre branche locale improv fusionnera alors automatiquement les modifications de improv sur le serveur (et donc sur votre autre machine) lorsque vous exécuterez git pull.

Questions connexes