Tema 8: Repositorios remotos y origin
Hasta aquí todo podía ocurrir en tu ordenador. Un repositorio remoto es otro repositorio al que puedes acceder para compartir versiones. GitHub es un servicio que aloja repositorios; no sustituye a Git ni convierte cada commit local en un envío automático.
origin es un nombre local habitual para un remoto, no una palabra mágica ni el nombre obligatorio de un servidor. Puedes asociarlo a una URL HTTPS o, cuando aprendamos autenticación SSH, a una URL de ese tipo. Configurar un remoto guarda una dirección: no descarga ni envía versiones.
git remote lista los nombres configurados. git remote -v añade sus direcciones. La salida suele distinguir acceso de lectura, rotulado fetch, y envío, rotulado push. De momento interpreta esas palabras como direcciones de lectura y escritura; los comandos se explicarán antes de practicarlos.
git remote add origin <URL> añade la relación. Si el nombre ya existe, no lo añadas de nuevo: git remote set-url origin <URL> actualiza su dirección. git remote get-url origin consulta exactamente qué dirección está guardada.
Los commits de los temas anteriores siguen siendo locales. Comprueba git log y status como antes: añadir un remoto no cambia el contenido guardado ni los archivos del trabajo. En el siguiente tema copiarás un repositorio existente; los envíos se explican en el tema 11.
Comandos para probar #
1git remote 2git remote add origin https://github.com/equipo/proyecto.git 3git remote -v 4git remote get-url origin 5git status
Error que conviene evitar #
Creer que añadir origin publica los commits o crea automáticamente un repositorio en GitHub. Solo configura la dirección en el repositorio local.
Laboratorio local #
Prueba los comandos y observa qué cambia. Puedes reiniciar sin guardar una entrega. Los retos evaluables y el cuestionario están en las actividades de este tema.
Git / práctica local
Conecta un remoto
Aplicar edición cambia el archivo; git add lo prepara.
Historial de commits
Cada punto representa una versión guardada.
- 0000001: Commit inicial; HEAD → main
Comparar trabajo, índice y HEAD
Trabajo
# Mi proyecto
Índice (staging)
# Mi proyecto
HEAD
# Mi proyecto
TERMINAL
Sesión local preparada. Escribe help para consultar los comandos de este tema.
Comandos disponibles y límites
git --version · git config --global <clave> [valor] git init · git status git add <archivo | .> · git commit -m "mensaje" · git log git log --oneline · git switch <rama> (antes: checkout) git restore [--staged] <archivo> · git commit --amend [-m "mensaje" | --no-edit] git switch --detach <commit> · HEAD · HEAD~1 git diff [--staged | <commit> <commit>] git remote [-v] · git remote add <nombre> <URL> · git remote get-url <nombre> · git remote set-url <nombre> <URL> help · clear
Sesión en memoria: recargar descarta la práctica. Doscientas acciones como máximo. Dos archivos editables de hasta 250 líneas. El modelo no ejecuta comandos reales ni realiza conexiones externas. diff muestra contenido anterior y posterior por archivo.
Resumen
- Es una convención que puede apuntar a distintos servidores.
- Permite revisar la configuración de acceso.
- No modifica la configuración.
- Creer que añadir origin publica los commits o crea automáticamente un repositorio en GitHub. Solo configura la dirección en el repositorio local.