Después de hacer un git pull origin master en un equipo que esté detrás de origin, al hacer git status nos dirá que está X commits por delante (tantos como estuviera por delante el remoto respecto del local):
~ git pull origin master
<pasan cosas>
~ git status
# On branch master
# Your branch is ahead of 'origin/master' by 2 commits.
#
nothing to commit (working directory clean)
# Your branch is ahead of 'origin/master' by 2 commits.
#
nothing to commit (working directory clean)
Esto se debe a que la referencia al HEAD de origin no ha cambiado en el local, para actualizarla basta con hacer git fetch origin:
~ git fetch origin
<pasan cosas>
~ git status
# On branch master
nothing to commit (working directory clean)
nothing to commit (working directory clean)
Para evitar esta situación o evitar tener que hacer un fetch después de un pull (cuando se supone que un pull es un fetch + merge), podemos hacer directamente:
~ git pull origin
<pasan cosas, pero esta vez sincronizando los HEAD del branch remoto y del local>
Gracias a este hilo en GitHub:
http://stackoverflow.com/questions/2432579/git-your-branch-is-ahead-by-x-commits
http://stackoverflow.com/questions/2432579/git-your-branch-is-ahead-by-x-commits
No hay comentarios:
Publicar un comentario