Ir al contenido

Cómo entregar las prácticas

Estas instrucciones son iguales para todas las prácticas del curso. Sustituye N por el número de tu práctica en los comandos (ej: practica1, practica2…).


En lugar de enviar ficheros sueltos por correo, todas las prácticas se entregan en un repositorio de GitHub. Así construyes un portafolio profesional y aprendes el flujo de trabajo real con git.

lfcs-practicas/
├── practica1/
│ ├── README.md
│ └── entrega/
│ └── verificacion.txt
├── practica2/
│ ├── README.md
│ └── entrega/
│ └── verificacion.txt
├── ...
└── practica6/
├── README.md
└── entrega/
├── verificacion.txt
└── (ficheros específicos)

1. Crear una cuenta de GitHub (si no la tienes)

Sección titulada “1. Crear una cuenta de GitHub (si no la tienes)"
  1. Ve a https://github.com/join
  2. Rellena:
    • Username: elige un nombre (ej: alumno-linux)
    • Email: tu correo real
    • Password: usa una contraseña segura
  3. Resuelve el puzzle de verificación
  4. Haz clic en Create account
  5. Confirma tu correo electrónico con el enlace que recibirás

Con SSH no tendrás que escribir tu usuario y contraseña cada vez que subas código.

2.1 Generar clave SSH (en tu máquina local)

Sección titulada “2.1 Generar clave SSH (en tu máquina local)"
ventana terminal
ssh-keygen -t ed25519 -C "tu-email@ejemplo.com"

Pulsa Enter para aceptar la ruta por defecto (~/.ssh/id_ed25519).
Cuando pida passphrase, puedes pulsar Enter dos veces (sin contraseña, más cómodo para prácticas).

  1. Muestra tu clave pública:
ventana terminal
cat ~/.ssh/id_ed25519.pub
  1. Copia toda la línea (empieza por ssh-ed25519 y termina con tu email)
  2. Ve a GitHub → Settings (icono de tu foto → Settings)
  3. En el menú izquierdo: SSH and GPG keys
  4. Haz clic en New SSH key
  5. Pega la clave y ponle un título (ej: mi-ordenador-portatil)
  6. Haz clic en Add SSH key
ventana terminal
ssh -T git@github.com

Deberías ver algo como:

Hi alumno-linux! You've successfully authenticated...

ventana terminal
sudo pacman -S git

Configurar tu identidad (importante para los commits):

ventana terminal
git config --global user.name "Tu Nombre"
git config --global user.email "tu-email@ejemplo.com"

  1. Ve a https://github.com/new
  2. Rellena:
    • Repository name: lfcs-practicas
    • Description: Prácticas del curso LFCS
    • Public (recomendado para portafolio) o Private
    • No marcar “Add a README”
  3. Haz clic en Create repository

5. Clonar el repositorio y empezar a trabajar

Sección titulada “5. Clonar el repositorio y empezar a trabajar"
ventana terminal
git clone git@github.com:TU-USUARIO/lfcs-practicas.git
cd lfcs-practicas

5.2 Crear la estructura de la práctica actual

Sección titulada “5.2 Crear la estructura de la práctica actual"
ventana terminal
mkdir -p practicaN/entrega

5.3 Generar los ficheros de entrega (dentro del servidor)

Sección titulada “5.3 Generar los ficheros de entrega (dentro del servidor)"

Dentro de Ubuntu (Distrobox/WSL/Lima):

ventana terminal
cd ~/lfcs-practicas/practicaN
# Generar verificacion.txt (u otros ficheros que pida el ejercicio)
{
echo "=== ENTREGA PRÁCTICA N ==="
echo "Hostname: $(hostname)"
echo "Usuario: $(whoami)"
uname -a
ip addr show | grep "inet " | grep -v "127.0.0.1"
timedatectl | grep "Time zone"
sudo apt list --upgradable 2>/dev/null | wc -l
} > entrega/verificacion.txt
ventana terminal
nano practicaN/README.md

Contenido mínimo:

# Práctica N — [Título de la práctica]
## Servidor utilizado
- Método: Distrobox / WSL2 / Lima
- SO: Ubuntu 22.04 / 24.04
- Hostname: servidor-linux
## Comandos aprendidos
- `comando1` - para qué sirve
- `comando2` - para qué sirve
## Dificultades encontradas
<!-- Describe al menos un problema real y cómo lo solucionaste -->
## Tiempo dedicado
<!-- Ej: 2 horas -->
## Evidencia
Los ficheros generados están en la carpeta `entrega/`

5.5 Guardar también el historial de comandos

Sección titulada “5.5 Guardar también el historial de comandos"
ventana terminal
history > ~/lfcs-practicas/practicaN/entrega/history.txt

ventana terminal
cd ~/lfcs-practicas
# Ver qué archivos has modificado/añadido
git status
# Añadir todos los cambios
git add .
# Crear un commit con un mensaje descriptivo
git commit -m "Entrega práctica N: [breve descripción de lo que hiciste]"
# Subir a GitHub
git push

7. Abrir el repositorio con Visual Studio Code

Sección titulada “7. Abrir el repositorio con Visual Studio Code"
  1. Abre Visual Studio Code
  2. Pulsa Ctrl+Shift+P (o Cmd+Shift+P en Mac)
  3. Escribe Git: Clone
  4. Pega la URL del repositorio: git@github.com:TU-USUARIO/lfcs-practicas.git
  5. Elige la carpeta donde guardarlo (ej: ~/Documentos/)
  6. Cuando termine, haz clic en Open

Comparte el enlace de tu repositorio:

  • Si es público: https://github.com/TU-USUARIO/lfcs-practicas
  • Si es privado: Añade al profesor como colaborador
    • Repositorio → Settings → Collaborators → Add people → hola@casset.cat

ElementoPuntuación
Carpeta practicaN/entrega/ existe1 pto
Ficheros de entrega generados correctamente3 ptos
README.md completo (mínimo 5 líneas)2 ptos
Dificultades documentadas (mínimo 1)1 pto
Commit con mensaje descriptivo1 pto
Estructura general del repositorio2 ptos
Total10 ptos

ventana terminal
# Clonar repositorio
git clone git@github.com:TU-USUARIO/lfcs-practicas.git
# Ver estado
git status
# Añadir todo
git add .
# Hacer commit
git commit -m "Mensaje descriptivo"
# Subir cambios
git push
# Ver historial de commits
git log --oneline
# Abrir en VS Code
code .

ProblemaSolución
Permission denied (publickey)No añadiste la clave SSH a GitHub. Ve a Settings → SSH and GPG keys
fatal: not a git repositoryNo estás dentro de la carpeta del repositorio. Haz cd lfcs-practicas
rejected: failed to pushHaz git pull primero para bajar cambios remotos
No recuerdo qué cambiégit diff muestra las diferencias
Quiero deshacer un commitgit reset —soft HEAD~1 (mantiene los cambios)

¡Buena suerte con las prácticas! 🚀