Frecuentemente publicamos actualizaciones de nuestra documentación. Es posible que la traducción de esta página esté en curso. Para conocer la información más actual, visita la documentación en inglés. Si existe un problema con las traducciones en esta página, por favor infórmanos.

Subir confirmaciones de cambios a un repositorio remoto

Utiliza git push para subir confirmaciones de cambios realizadas en tu rama local a un repositorio remoto.

En este artículo

El comando git push toma dos argumentos:

  • Un nombre remoto, por ejemplo, origin
  • Una rama remota, por ejemplo, master (principal)

Por ejemplo:

git push  <REMOTENAME> <BRANCHNAME> 

Como ejemplo, generalmente ejecutas git push origin master para subir los cambios locales a tu repositorio en línea.

Renombrar ramas

Para renombrar una rama, utilizarías el mismo comando git push, pero agregarías un argumento más: el nombre de la nueva rama. Por ejemplo:

git push  <REMOTENAME> <LOCALBRANCHNAME>:<REMOTEBRANCHNAME> 

Esto sube LOCALBRANCHNAME a tu REMOTENAME, pero es renombrado a REMOTEBRANCHNAME.

Abordar errores sin avance rápido

Si tu copia local de un repositorio está desincronizada, o "atrasada", con respecto al repositorio ascendente al que estás subiendo, recibirás un mensaje que dice que non-fast-forward updates were rejected (las actualizaciones sin avance rápido se rechazaron). Esto significa que debes recuperar, o "extraer", los cambios ascendentes, antes de poder subir tus cambios locales.

Para obtener más información sobre este error, consulta "Abordar errores sin avance rápido."

Subir etiquetas

Por defecto, y sin parámetros adicionales, git push envía todas las ramas que coinciden para que tengan el mismo nombre que las ramas remotas.

Para subir una etiqueta única, puedes emitir el mismo comando que al subir una rama:

git push  <REMOTENAME> <TAGNAME> 

Para subir todas tus etiquetas, puede escribir el comando:

git push  <REMOTENAME> --tags

Eliminar una etiqueta o rama remota

La sintaxis para borrar una rama es un poco críptica a primera vista:

git push  <REMOTENAME> :<BRANCHNAME> 

Nota que hay un espacio antes de los dos puntos. El comando se parece a los mismos pasos que tomarías para renombrar una rama. Sin embargo, aquí estás diciéndole a Git que no suba nada dentro de BRANCHNAME en REMOTENAME. Debido a esto, git push elimina la rama en el repositorio remoto.

Remotos y bifurcaciones

Posiblemente ya sepas que puedes "bifurcar" repositorios en GitHub.

Cuando clonas un repositorio de tu propiedad, le proporcionas una URL remota que le indica a Git dónde extraer y subir actualizaciones. Si deseas colaborar con el repositorio original, agregarías una nueva a URL remota, normalmente llamada upstream (ascendente), a tu clon de Git local:

git remote add upstream  <THEIR_REMOTE_URL> 

Ahora, puedes extraer actualizaciones y ramas de sus bifurcaciones:

git extrae ascendente
# Toma las ramas de los remotos ascendentes
> remoto: Contando objetos: 75, realizado.
> remoto: Comprimiendo objetos: 100 % (53/53), realizado.
> remoto: Total 62 (delta 27), reutilizados 44 (delta 9)
> Descompimiendo objetos: 100 % (62/62), realizado.
> Desde https://github.com/octocat/repo
>  * [nueva rama]      master     -> upstream/master

Cuando hayas finalizado tus cambios locales, puedes subir tu rama local a GitHub e iniciar una solicitud de extracción.

Para obtener más información sobre cómo trabajar con bifurcaciones, consulta "Sincronizar una bifurcación".

Leer más

Pregunta a una persona

¿No puedes encontrar lo que estás buscando?

Contáctanos