Diferencia entre Git Push Origin y Git Push Origin Master
Este artículo describe las diferencias entre los comandos git push origin
y git push origin master
. Usamos estos comandos para enviar cambios al repositorio remoto.
La diferencia radica en cómo y cuándo usarlos, como se explica a continuación. Cubriremos lo que hace cada comando, cómo usarlo y cuándo usar cada uno de los dos comandos.
el comando git push origin master
El comando git push origin master
es bastante sencillo. Usamos este comando para enviar cambios locales desde la rama maestra
a la rama remota maestra
.
Este es su comportamiento predeterminado y no se puede cambiar.
Eso es todo. No hay mucho que se pueda decir sobre el comando. Pasemos al siguiente comando.
el comando git push origen
El comando git push origin
es bastante complicado que el comando anterior. Antes de la versión v1.7.11 de Git, el comando git push origin
se usaba para enviar todas las sucursales locales a sus sucursales remotas correspondientes.
La versión V2.0+ de Git requiere que configuremos push.default
como coincidente
o simple
. Cuando no se establece, Git tiene por defecto la configuración simple
, que solo empujará la rama actual a la rama de seguimiento remoto correspondiente.
El comando fallará si la sucursal local no tiene una sucursal de seguimiento remoto. Veamos un ejemplo.
Suponiendo que tenemos una rama de característica
en nuestro repositorio local y tiene una rama de seguimiento remoto, ¿qué sucede cuando invocamos el comando git push origin
sin establecer el valor push.default
?
$ git push origin
Git te dará una advertencia, como la siguiente.
La salida será:
Como se ve en el resultado anterior, Git ha usado la configuración simple
, que solo ha enviado nuestra rama “característica” al repositorio remoto.
¿Qué sucede si establecemos el valor push.default
en coincidencia
? Vamos a averiguar.
$ git config --global push.default matching
Al ejecutar el comando git push origin
, obtendremos:
Podemos ver que Git ha enviado dos ramas al control remoto. (es decir, ramas master
y feature
)
En pocas palabras, el git push origin master
solo empujará la rama master
a la rama master
de seguimiento remoto. Por otro lado, el comando git push origin
empujará la rama local actual, siempre que tenga una rama de seguimiento remoto.
Sin embargo, el comportamiento de este comando se puede cambiar configurando el valor push.default
en coincidencia
para enviar todas las sucursales locales a sus correspondientes sucursales de seguimiento remoto.
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn