2011-06-24 32 views
6

Observo que el comportamiento predeterminado de git push origin es "presionar todas las ramas con el mismo nombre local y distante".¿Funciona `git push` como abreviatura de` git push origin newfeature`?

Si creo una nueva rama newfeature y la reviso, ¿git push empujará la rama a origin de forma predeterminada?

¿O necesito usar git push origin newfeature incluso cuando está desprotegido?

Además, ¿cómo se relaciona el comando git push HEAD con esto?

Respuesta

7

Por defecto, presionará newfeature si y solo si ya existe una rama llamada newfeature en el control remoto.

Puede cambiar esto utilizando la variable de configuración push.default.

git push HEAD es esencialmente una abreviatura de git push <name of checked out branch> si tiene una rama desprotegida.

+0

¿Esto significa que 'git push HEAD' y' git push' tienen exactamente la misma funcionalidad, es decir, empujar la ramificación extraída al control remoto (mientras exista una rama con el mismo nombre en el control remoto)? – eoinoc

+0

No. 'git push', por defecto, empuja * todas * las ramas locales que tienen ramas coincidentes en el control remoto. Así que si tienes un 'A' local, un' B' local y un 'C' local, y hay' A' y 'C' en el control remoto, se presionarán tanto' A' como 'C' (pero no 'B', ya que no hay' B' remoto a juego ya). – Amber