Git: la récupération dernier commit sur une branche

J'ai du mal à comprendre quelque chose sur GIT.

Nous avons un référentiel avec un certain nombre de branches en elle. J'ai la possibilité de récupérer une copie locale de l'une de ces branches (git checkout -b ...), apporter des modifications, puis de le repousser. Si je n'ai pas de balise de la fin de la branche, cependant, comment les autres utilisateurs à obtenir la tête de la branche? Lorsqu'ils utilisent git checkout pour récupérer la branche sur laquelle ils obtenir le code à l'endroit de la direction générale -- pas le chef de cette branche.

Ce qui me manque ici?

EDIT: je suis venu sur ce projet en retard et a été impliqué dans le CVS à GIT de conversion. Je suis en supposant que le FOO_3_4_0001... tags marquer des points le long de la branche a débuté avec FOO_3_4_0001_INITIAL. Comment puis-je vérifier?

EDIT 2: Merci à tous ceux qui ont contribué de réponses. Il s'avère que la balise FOO_3_4_0001 n'était pas sur la branche 3.4 et c'est ce que j'ai été absent tout au long. J'ai déjà arrangé le lynchage partie.


@ghoseb, n'a pas fonctionné. J'ai essayé ceci:

16:19:29 (1) foo $ git checkout --track -b FOO_3_4_0001_INITIAL origin/FOO_3_4_0001_INITIAL
Branch FOO_3_4_0001_INITIAL set up to track remote branch refs/remotes/origin/FOO_3_4_0001_INITIAL.
Switched to a new branch "FOO_3_4_0001_INITIAL"
16:19:36 (1) foo $ git branch
* FOO_3_4_0001_INITIAL
  master
16:19:39 (1) foo $ git pull
remote: Counting objects: 68, done.
remote: Compressing objects: 100remote: % (59/59), done.
remote: Total 61 (delta 18), reused 0 (delta 0)
Unpacking objects: 100% (61/61), done.
From ssh://***
   f0c5a5f..99f6c1e  master     -> origin/master
Already up-to-date.
16:19:42 (1) foo $

À ce point, j'ai vérifié pour la modification que j'ai faite sur cette branche, et il n'est pas là. Si j'ai vérifier le code tagged FOO_3_4_0001_RC5a mon changement est là.


Ok, plus d'infos pour @Dustin et @mipadi.

Quand je lance git branch -r, je vois:

16:12:02 (1) foo $ git branch -r
  origin/FOO_3_3_0001_BUILT_VF_BRANCH
  origin/FOO_3_4_0001_INITIAL
  origin/FOO_3_5_0000_RC5
  origin/FOO_3_5_0001_BRANCH
  origin/HEAD
  origin/master
  origin/origin
16:12:05 (1) foo $

Et si je regarde la liste des tags, je vois, entre autres choses:

16:12:05 (1) foo $ git tag -l
FOO_3_4_0000_RC1
FOO_3_4_0000_RC2
FOO_3_4_0000_RC2b
FOO_3_4_0000_RC3
FOO_3_4_0000_RC4
FOO_3_4_0000_RC4b
FOO_3_4_0000_RC5
FOO_3_4_0000_RELEASE
FOO_3_4_0000_TC1
FOO_3_4_0000_TC2
FOO_3_4_0001_RC2
FOO_3_4_0001_RC3
FOO_3_4_0001_RC4
FOO_3_4_0001_RC5
FOO_3_4_0001_RC5a
FOO_3_4_0001_TC1
16:14:33 (1) foo $

Le défi que j'ai, c'est de savoir ce que le code le plus récent sur le FOO_3_4_0001_INITIAL de la branche est.

Maintenant, dans ce cas, je sais que c'est FOO_3_4_0001_RC5a, mais si je n'ai pas (comme ce sera parfois le cas pour certains de nos développeurs) comment puis-je vérifier le origin_FOO_3_4_0001_INITIAL branche sais que j'ai la très de code plus tard, sur cette branche?

  • Qu'entendez-vous par "tag"? Pouvez-vous donner un exemple de ce que vous essayez de faire et ce que vous attendez?
InformationsquelleAutor Andrew | 2009-01-19