Un remoto es la copia compartida del proyecto
Un repositorio remoto es una copia de tu proyecto guardada en un servidor, como Gitea o GitHub, que todo el equipo puede leer y escribir. Con tres comandos, clone, push y pull, compartes tu trabajo y recibes el de los demás.
Un grupo de prácticas de cuatro estudiantes necesita un lugar común para su código. Sin remoto, se lo pasarían por correo.
Al terminar esta lección
Nota
Puedo clonar un repositorio y explicar cuándo subir y cuándo bajar cambios.
Palabras clave
| Palabra | Qué significa |
|---|---|
| Remoto | copia compartida de un repositorio en un servidor |
| Clonar | copiar un repositorio con todo su historial |
| origin | nombre que recibe el remoto del que clonaste |
| Push | subir tus commits al remoto |
| Pull | bajar los commits nuevos del remoto a tu rama |
Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.
Un clon copia todo el historial
Para trabajar con un remoto lo clonas. Recibes todos los archivos y todos los commits anteriores, y tu copia recuerda de dónde vino.
El Gitea del laboratorio tiene un repositorio llamado hello-git. Lo vas a clonar en una carpeta de práctica llamada copia. Esa carpeta es solo para mirar.
Clona el repositorio en copia
git clone -q http://gitea:3000/student/hello-git.git copiaSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Mira de dónde viene tu copia
git -C copia remote -vSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Tu rama sabe cuántos commits lleva de ventaja
Tu rama main sigue a origin/main, que es lo último que sabes del remoto. Git compara las dos.
Si hiciste commits que el remoto no tiene, estás por delante (ahead). Si el remoto tiene commits que tú no tienes, estás por detrás (behind).
Prueba a hacer un commit local y mira el cambio. No lo vas a subir.
Mira el estado respecto al remoto
git -C copia status -sbSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Fija tu nombre de autor
git -C copia config user.name "Estudiante"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Fija tu correo de autor
git -C copia config user.email "[email protected]"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Crea un archivo de apuntes
printf 'apuntes del curso\n' > copia/notas.txtSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Prepara el archivo
git -C copia add notas.txtSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Guarda el commit solo en tu copia
git -C copia commit -q -m "Crear las notas del curso"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Mira otra vez el estado
git -C copia status -sbSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Cuenta adelante y atrás
git -C copia rev-list --left-right --count main...origin/mainSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Push sube y pull baja commits
Con git push subes al remoto los commits que te faltan por subir. Con git pull bajas los del remoto y los fusionas en tu rama.
Regla práctica: haz pull antes de empezar a trabajar y antes de subir. Si el remoto tiene commits que no tienes, Git rechaza el push hasta que hagas pull.
Estos dos comandos son los de la tarea del laboratorio. Aquí solo los lees.
Los dos comandos, como ejemplo
# Ejemplo: no lo ejecutes en copia.
# Baja lo nuevo del remoto y lo fusiona en tu rama.
git pull
# Sube tus commits al remoto.
git push origin mainUn error frecuente
Advertencia
Mucha gente cree que hacer commit sube el trabajo al servidor. No es así: el commit queda en tu copia. Solo git push lo envía. Si tu compañera no ve tu trabajo, comprueba si estás por delante.