¿A qué apunta HEAD?

Quiero comparar mi twig master local con la twig remota de origin/master . Sé cómo hacer git pull --rebase; git diff origin/master git pull --rebase; git diff origin/master desde mi twig master local para detectar las diferencias línea por línea en el código. Pero, quiero comparar los historiales de confirmación, es decir, mostrar git log y git log origin/master uno al lado del otro. Intenté git show-branch -a pero obtuve:

 * [master] change content background-color to blue ! [origin/HEAD] add favicon ! [origin/master] add favicon --- * [master] change content background-color to blue *++ [origin/HEAD] add favicon 
  1. ¿Hay una mejor manera?
  2. Además, ¿a qué apunta HEAD , el compromiso de check-out?

Podrías hacerlo:

 git log master..origin/master 

para enumerar los commits que están "entre" master y origin/master .

HEAD apunta al compromiso comprobado.

Tanto la syntax punto-punto como HEAD están documentados en gitrevisions (7) .

  1. ¿Hay una mejor manera …

    1. para detectar las diferencias línea por línea en el código?

      git diff origin/master..master

    2. para comparar los historiales de compromiso?

      git log origin/master..master

  2. Además, ¿a qué apunta HEAD, el compromiso de check-out?

    HEAD señala hacia la "punta" de la "twig" actual.

Esto me da una forma razonablemente buena de ver las diferencias a la vez que los compromisos de ambas twigs son visibles

 git-forest --date-order $ (git merge-base master origin / master) master origin / master

(Alternativamente, reemplace por gitk o git log --oneline --graph …)

Deberías usar git fetch not git pull . git pull trataría de fusionar la twig. Ahora estás en un conflicto, usa git merge --abort para abortarlo.