2012-09-21 13 views
12

me enseñaron que podría empujar a y tirar de una rama remota que coincida con el nombre de su actual rama Git haciendo:Git CABEZA origen tirón

git push origin HEAD 

o

git pull origin HEAD 

Su siempre trabajaron para mí antes, pero extrañamente no funciona a veces, en lugar deferir a empujar/tirar de la rama master en su lugar (lo que provoca una fusión en pull ... no lo que quiero hacer). Sé que usted puede fácilmente empujar/tirar de la rama que está en simplemente usando el nombre de la sucursal como:

git pull origin name-of-branch-i-want-to-pull-from 

De todos modos:

  1. ¿Hay alguna razón que la cabeza está perdiendo la ruta/no apuntando a mi rama actual, como casi siempre?
  2. ¿Hay alguna forma de empujar/tirar a la rama en la que estoy trabajando actualmente (siempre que el nombre de la rama remota coincida) sin nombrar explícitamente la rama en el comando?

Respuesta

2

Gracias a la seria ayuda de @abackstrom, pude solucionar mi problema. En esencia, este post era mi problema, y ​​la solución:

Git branch named origin/HEAD -> origin/master

El comando exacto "recrear"/rastrear una cabeza rama/puntero locales correcta era:

git remote set-head origin -a 

Espero que esto ayude alguien más que se encuentre con este problema

4

HEAD no es realmente una rama. Es un puntero al compromiso que actualmente ha desprotegido, y a menudo hace referencia a una rama, pero si hace algo como git checkout <sha> o git checkout <tag>, HEAD hace referencia a un compromiso directamente, sin vinculación con una rama; esto se denomina "desapegado". HEAD "estado, y normalmente debería recibir una advertencia de git checkout cuando ingrese dicho estado. En ese estado, intentar empujar/tirar de HEAD no tiene sentido, ya que no estás en una rama.

+1

Sí, eso tiene sentido, porque entonces estás rastreando una rama no ramificada, pero eso no es lo que está sucediendo aquí. En su lugar, actualmente estoy rastreando una rama (por ejemplo, titulada 'parche'), confirmo, y luego I: 'git push origen CABEZAL' y lo empuja al origen/maestro Ocurre al tirar también. Extraño. – Rican7

Cuestiones relacionadas