Gestionar repositorios remotos con Git
Tempo de lectura: 3 minutos
Tenemos una serie de comandos git para recuperar o actualizar el repositorio remoto, independientemente de los cambios locales.
Contenido | ||
git fetch | git fetch es el comando que hace que tu repositorio Git local se actualice con la última información que hay en el repositorio remoto, pero no
hace ninguna transferencia de archivos a tu espacio de trabajo local. Descarga commits y archivos. Es lo que se utiliza para ver qué cambios se han producido en el repositorio remoto, pero no te obliga a fusionarlos con tu trabajo local. Los cambios están disponibles. | |
git pull | git pull es el comando que comprueba si hay cambios en el repositorio remoto y, en caso de que los haya, se trae esos archivos a tu repositorio local y actualiza tu espacio de trabajo, es decir, los fusiona con lo qu tienes localmente. Los comandos git pull y git fetch pueden confundirse, aunque tienen efectos diferentes. Ambos descargan los cambios en el repositorio remoto pero git pull actualiza el repositorio local inmediatamente. | |
![]() | Flujo de cambios comparados entre fetch y pull Ampliación | |
git remote | Este comando permite gestionar las conexiones a los repositorios remotos. Básicamente asigna nombres a las URLs de los repositorios de manera que es más sencillo apuntar a un repositorio remoto dado. | |
| ||
Hay una conexión creada por defecto la primera vez que se clona un repositorio y es origin que hace referencia a la URL del repositorio clonado.
| ||
git merge | Este comando no es un comando remoto, pero entra en juego cuando utilizamos git pull , como se ha comentado.
Incorpora los cambios de los commits indicados de una rama, en la rama actual. Y se puede utilizar de forma independiente para fusionar cambios entre ramas locales. git merge fusiona dos ramas en una y te permite guardar tus cambios con seguridad. Un caso general sería el que se reprsenta a continuación.
| |
| ||
git merge development fusiona los cambios de la rama development desde que se separó de master y los cambios se guardan en un nuevo commit .
| ||
| ||
Este comando se utiiza para subir contenido local a un repositorio remoto. Mientras que git fetch recupera commits de un repositorio remoto, git pull los envía al repositorio remoto y los fusiona, ojo!
| ||
git push | Este comando funciona únicamente si has clonado de un servidor en el que tienes permiso de escritura. Si tú y otra persona clonais a la vez, y él envía su información y luego envías tú la tuya, tu envío será rechazado. Tendrás que bajarte primero su trabajo e incorporarlo en el tuyo para que se te permita hacer un envío. | |
|
Referencias | Documentación de Git https://docs.github.com | |
Scott Chacon https://git-scm.com | ||
Trabajar con remotos https://git-scm.com |