468 votes

git : votre succursale est Ahead par X s’engage

Comment est-ce fait?

Je travaille dans un repo par moi-même en ce moment, donc c'est mon flux de travail:

1- change files
2- commit
3- repeat 1-2 until satisfied
4- push to master

Alors, quand je fais un git status il me dit que ma direction est en avance par X s'engage (probablement le même nombre de commits que j'ai fait). Est-ce parce que lorsque vous appuyez sur le code il ne fait pas de mise à jour de vos fichiers mis en cache localement (dans l' .git dossiers)? git pull semble "réparer" cette étrange message, mais je suis toujours curieux de savoir pourquoi il se produit, peut-être que je suis à l'aide de git mal?


including what branch is printed in the message

Ma branche locale est en avance de maître

where do you push/pull the current branch

Je suis poussant à github et en tirant à l'ordinateur, j'arrive de travailler sur ce point dans le temps, ma copie locale est toujours parfaitement à jour que je suis le seul à travailler sur elle.

it doesn't actually check the remote repo

C'est ce que j'ai pensé, j'ai pensé que je voudrais m'assurer que ma compréhension est correcte.


are you passing some extra arguments to it?

Pas ceux que je peux voir, peut-être qu'il y a de drôles de config sur ma fin?

$ git status
# On branch master
# Your branch is ahead of 'origin/master' by 1 commit.
#
nothing to commit (working directory clean)

536voto

Rich Points 4452

Si vous obtenez ce message après avoir fait un « git pull distants », essayer la suite il vers le haut avec un « git fetch ».

Fetch semble mettre à jour la représentation locale de la branche distante, qui n’arrive pas nécessairement quand vous faites un « git pull distants ».

200voto

Marian Zburlea Points 2636

Utilisation

L’option--rebase option signifie que git sera écarter votre engagement local, synchroniser avec la télécommande, puis essayez d’appliquer vos validations du nouvel État.

54voto

Josh Lee Points 53741

Je pense que vous êtes mal interpréter le message - votre Agence n’est pas avant la , il *est* . C’est avant la , qui est une **branche de suivi à distance** qui enregistre l’état du référentiel distant de votre dernière , , ou . C’est vous dire exactement ce que vous faisiez ; Tu as devant la télécommande et c’est pour vous rappeler de pousser.

27voto

Quelqu'un dit que vous pourriez être mal interpréter votre message, vous n’êtes pas. Cette question est en fait lié à votre `` fichier. Il sera dans un article similaire à celui-ci :

Si vous supprimez la ligne d’extraction de fichier .git/config de votre projet, vous vous arrêterez le « votre succursale devance « origin/master » par `` s’engage. » gêne ne se produise.

Ou alors j’espère. :)

4voto

The Code Father Points 31

J'ai eu ce même problème sur une machine Windows. Lorsque j'ai exécuté une commande git pull origin master , j'obtiendrais l'avertissement "ahead of 'origin / master' by X commits". J'ai trouvé que si je courais à la place git pull origin et n'ai pas spécifié la branche, alors je ne recevrais plus l'avertissement.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X