2011-12-02 7 views
9

J'essaie de tirer d'un dépôt qui a environ 10 fichiers. Sur mon référentiel local, je n'ai qu'un seul fichier. Quand je tapeGit Pull - Tout est à jour, mais ce n'est pas

git pull origin master 

Je reviens « Tout à jour »

Cependant, je suis toujours portés disparus ces 9 ou si les fichiers du référentiel. Des idées sur la raison pour laquelle cela pourrait arriver?

+0

J'ai demandé à quelqu'un d'autre d'aller au dépôt et d'ajouter un fichier. Quand il a commis et poussé j'ai eu son changement, mais il me manque encore beaucoup de fichiers sur le repo. – WillHaack

+0

Les fichiers ne sont-ils pas ignorés? 'git log renvoie les journaux? Tirez-vous la bonne branche? – gustavotkg

+0

Est-ce que 'git status' signale des modifications? Est-ce que 'gitk --all' vous montre comme sur la branche que vous attendez, et avez-vous des commits qui ne sont pas en origine (ce qui pourrait avoir des fichiers supprimés)? – Cascabel

Répondre

6

Vérifiez si vous êtes sur la branche droite et ont vérifié la même version que vous comparez à: git checkout HEAD

+0

Merci, cela m'a montré que j'étais "en avance" de master d'origine par 1 commit. J'ai ensuite fait git log, regardé les commits plus anciens, et suis retourné à un plus ancien avec: git resert --hard . – WillHaack

2

J'ai eu un problème similaire, mais avait besoin d'une autre solution. Les versions locales sur un ordinateur n'étaient pas mises à jour à partir du repo GitHub, qui était en avance sur la base du travail que j'avais fait et poussé depuis un deuxième ordinateur la nuit précédente. Il ne cessait de me dire que tous les fichiers étaient à jour, même si clairement ceux du premier ordinateur n'étaient pas les mêmes que ceux du second ou du repo GitHub. Ce qui a finalement résolu ce problème pour moi était d'ajouter un fichier .txt de la corbeille sur le second ordinateur (nouveau et différent de tout le reste, donc il n'y aurait pas de conflits de fusion). J'ai poussé ce dossier vers le repo, puis fait une nouvelle tentative de tirer du premier. Quand il a vu le nouveau fichier, il a tiré et a pris tous les autres changements. Je suis sûr qu'il y avait une meilleure solution, et c'est quelque chose que je faisais mal avec git, mais comme ça marchait, je voulais le poster, au cas où quelqu'un d'autre aurait le problème que j'étais.

+5

Argh ... Je déteste Git .. –

-1

git pull Le travail de git pull est de fetch nouveaux commits et merge dans la branche actuelle seulement.

Si la branche actuelle n'est pas dépassée par rapport à celui que vous tirez de, tirer dira Already up-to-date.Si vous avez des changements locaux dans votre répertoire de travail, son ignoré sliently (il n'a rien à voir avec cela).

Note:git pull ne concerne que les succursales & nouveaux commits, pas l'arbre de travail.

+1

Qui a voté vers le bas considère commenter la raison, Sinon, il ne vaut pas/aide à construire un meilleur endroit à SO :) –