Repositorio remoto
En Git, un repositorio remoto (o simplemente remoto) es la versión de tu proyecto guardada en algún sitio online, como GitHub, GitLab o Bitbucket. Piensa en él como la base compartida de tu código. Es el lugar al que todo el equipo puede enviar actualizaciones, traer la última versión y mantener el proyecto sincronizado.
Cuando alguien dice cosas como add a remote o push to the remote, se refiere a enviar tu trabajo local a esa copia online compartida, no a trastear con el mando de la tele.
Un repositorio remoto es importante por varias razones de peso:
-
Permite colaborar. Cada persona puede tener su propia copia local, hacer cambios y después enviar esas actualizaciones al remoto compartido. El resto puede traer esos cambios. Así es como los desarrolladores que trabajan desde distintas ciudades, o zonas horarias, pueden estar al día sin pisarse el trabajo.
-
Funciona como una red de seguridad. Si tu portátil deja de funcionar, tu código no. Como el proyecto vive en un servidor remoto, puedes recuperarlo todo clonándolo de nuevo. Básicamente es una copia de seguridad fuera de tu equipo.
-
Hace que tu código sea accesible desde cualquier sitio. Puedes traer tu proyecto a otro ordenador, retocarlo en una cafetería o revisarlo desde el móvil. Mientras tengas conexión a Internet, tu código viaja contigo.
-
Hace posible la automatización. La mayoría de equipos modernos conectan sus repositorios remotos a sistemas que prueban, construyen y despliegan el código automáticamente cada vez que alguien envía cambios. Eso hace que los bugs se detecten antes y que tu software esté siempre preparado para publicarse.
¿Te da curiosidad cómo se entera tu repo local de lo que pasa en remoto? Git actualiza las ramas de seguimiento remoto (como origin/main) cada vez que ejecutas git fetch o git pull, lo que te permite comparar el historial antes de fusionar nada.
Ejemplos
Añade un repositorio remoto con la URL indicada a la lista de remotos y asígnale el alias origin:
git remote add origin https://github.com/user/repo.gitTrae los cambios de una rama remota asociada a la rama main en el repositorio remoto origin y, si hay cambios, fusiónalos en la rama main:
git pull origin mainEnvía cambios a una rama remota asociada a la rama main en el repositorio remoto origin:
git push origin mainClona el repositorio remoto desde la URL indicada a tu equipo local. Puedes añadir un argumento más para especificar el nombre del directorio donde se clonará el repositorio:
git clone https://github.com/user/repo.gitCompara los cambios entre tu rama local y la rama remota:
git diff main origin/mainEn estos ejemplos, origin es el nombre convencional del repositorio remoto por defecto, pero puedes usar el nombre que quieras. La rama main suele usarse como rama principal en un repositorio, aunque puede variar según las convenciones del proyecto.
.gitignoregit checkoutgit configgit taggit worktree