Git push: Subir los cambios al repositorio central
El comando git push sube el contenido de un repositorio local a un repositorio central. De forma predeterminada, Git solo permite los push que no sobrescriben ningún commit en el repositorio de destino. Si eludes esta protección con la opción “--force”, puedes perder los cambios de otras personas.
Encuentre rápidamente el dominio que desea y cómprelo a un precio ventajoso. SSL y funciones profesionales incluidas.
¿Qué es git push?
Con Git, puedes trabajar en un proyecto tranquilamente y sin correr riesgos, mientras que los miembros de tu equipo continúan al mismo tiempo con sus respectivas tareas. El uso de repositorios individuales lo hace posible. Sin embargo, cuando hayas completado tus cambios y quieras integrarlos en todo el proyecto, el comando Git git push puede ayudarte. Con este comando, subes el contenido de tu repositorio local al repositorio remoto, que a su vez es accesible para los demás desarrolladores. Por tanto, git push es una herramienta muy importante para el éxito de tu proyecto.
El comando funciona como contraparte a git fetch o git pull. Mientras que estos dos comandos te permiten extraer contenido de un repositorio remoto a tu repositorio local, git push va en sentido contrario. A través de estos comandos, muchos pasos tienen lugar simultáneamente (en esto Git se diferencia de SVN). Una vez completados los cambios, basta con subirlos al repositorio remoto. Es importante tener en cuenta que git push puede sobrescribir otros cambios si se usa con la opción “--force”, por lo que el comando debe utilizarse con cuidado.
Sintaxis y funcionalidad de git push
La sintaxis de git push es sencilla. Primero escribes el comando en sí, luego especificas el repositorio remoto y después la rama local que quieres subir. Cuando se escribe tiene este aspecto:
git push <remote-repository> <rama-local>bashA continuación, Git crea o actualiza la rama correspondiente en el repositorio de destino y sube todo el contenido, los commits y los objetos internos. Sin embargo, como característica de protección, el sistema de control de versiones bloquea el git push si la carga no puede realizarse en una fusión rápida. Esto evita que los commits sean sobrescritos accidentalmente por el comando.
Ejemplo de git push
En el siguiente ejemplo, te mostraremos cómo es un git push en la práctica. Supongamos que has realizado cambios en tu repositorio local, los has probado ampliamente y los has dado por buenos. En el siguiente paso, estos cambios están listos para el repositorio remoto para que los demás miembros de tu equipo también puedan acceder a ellos. Para ello, ahora utilizamos varios comandos que siempre tendrás a mano con la práctica Git Cheat Sheet en PDF descargable.
git checkout main
git fetch origin main
git rebase -i origin/main
# Squash commits, fix up commit messages etc.
git push origin mainbashCon el comando git checkout cambiamos a la rama principal. Con git fetch nos aseguramos de que el repositorio local se corresponde con el estado del repositorio central. El comando git rebase fusiona el estado del repositorio central con el de tu repositorio local. Esto permite hacer una fusión rápida más adelante, ya que la base de los repositorios centrales y locales es la misma. A continuación, se realiza el git push propiamente dicho, que transmite tu estado actual incluyendo todos los cambios al repositorio central.
Otras opciones del comando
Además del comando estándar explicado anteriormente, también hay otras opciones para git push.
Cargar todas las ramas
git push <remote-repository> --allbashEste comando es similar al estándar, pero en lugar de subir una rama seleccionada, sube todas las ramas locales directamente al repositorio central. De esta forma, no tendrás que hacer este trabajo paso por paso.
Subir etiquetas
git push <remote-repository> --tagsbashCon esta opción se envían todas las etiquetas locales al repositorio remoto. Las etiquetas no se incluyen en un git push ordinario.
Forzar git push
git push <remote-repository> --forcebashEste comando corresponde a la versión estándar, pero también realiza el git push si no es posible la fusión rápida. Dado que esto aumenta el riesgo de que puedas sobrescribir los cambios y, por tanto, causar problemas, deberías evitar utilizar esta variante.
Git push en un repositorio bare
Para asegurar que los proyectos más grandes no se vean dañados por git push, se recomienda transferir solo a los repositorios bare. Se crean con git init --bare o git clone --bare. Un repositorio bare no tiene directorio de trabajo en el que alguien trabaje directamente, por lo que un push no puede alterar ningún archivo extraído (checked out) en él. Por eso, de forma predeterminada, Git rechaza un push a la rama extraída de un repositorio que tiene directorio de trabajo.
Eliminar ramas con git push
También puedes utilizar git push para eliminar una rama de forma local y remota. El comando correspondiente tiene el siguiente aspecto:
git branch -d rama_antigua
git push origin :rama_antiguabashCon ello, se elimina la rama “rama_antigua” del repositorio remoto.
Implementa páginas web y aplicaciones online en solo tres pasos. Con Deploy Now de IONOS te beneficiarás de una rápida configuración y máxima escalabilidad. Reserva ahora y prueba Deploy Now durante un mes de forma gratuita.

