lección 4
GitHub: tu código en la nube
Crear cuenta en GitHub, conectar tu repo local, push, clone. Tu código accesible desde cualquier sitio, con backup y colaboración.
⏱ 50 min
Hasta ahora, todo tu trabajo con Git vive en tu ordenador. Si se te rompe el disco duro, adiós código. Si quieres compartir tu trabajo con un compañero, ¿qué haces, le pasas un pendrive? Y si estás en el café trabajando con tu portátil y quieres continuar en el PC de casa, ¿copias la carpeta a Google Drive? Git resuelve el control de versiones LOCAL, pero necesitas algo más para el mundo real: un lugar central donde tu código viva en la nube, accesible desde cualquier sitio, con backup automático y herramientas de colaboración. Ese lugar es GitHub.
GitHub es a Git lo que Gmail es al email. El email es un protocolo — Gmail es un servicio que te da una interfaz bonita, almacenamiento y funcionalidades extra. Git es la herramienta de control de versiones — GitHub es una plataforma que aloja tus repos en la nube y añade colaboración, revisión de código, issues, automatización y mucho más. No es la única opción (existen GitLab, Bitbucket, Azure DevOps), pero es la más popular por mucho: más de 100 millones de desarrolladores la usan.
### Breve historia: por qué existe GitHub
Git nació en 2005 para gestionar el kernel de Linux. Era una herramienta de línea de comandos, potente pero poco accesible. En 2008, Tom Preston-Werner, Chris Wanstrath y PJ Hyett crearon GitHub con una idea: "¿y si hacemos que colaborar en código sea tan fácil como en una red social?". Antes de GitHub, compartir código abierto era un lío de parches por email. GitHub lo convirtió en: fork → editar → Pull Request. En 2018, Microsoft compró GitHub por 7.500 millones de dólares. Hoy es la plataforma donde vive prácticamente todo el software del mundo.
### Paso 1: Crear tu cuenta en GitHub
Si no tienes cuenta, ve a github.com y créala. Es gratis para repos públicos y privados ilimitados. Algunos consejos para tu perfil:
- Usa un nombre de usuario profesional (no "xXx_darkCoder_xXx"). Este es tu portfolio ante empleadores.
- Pon tu nombre real y una foto. Los reclutadores miran GitHub.
- Activa la autenticación de dos factores (2FA). Es obligatorio desde 2023.
- Añade tu email. Lo necesitarás para conectar con Git.
### Paso 2: Crear un repositorio en GitHub
Un repo en GitHub es como una carpeta en la nube que almacena tu código, su historial y toda la información de colaboración. Para crear uno:
- 01.Ve a github.com → botón verde "New" (o github.com/new)
- 02.Nombre: mi-pipeline (el mismo nombre que tu repo local)
- 03.Descripción: "Pipeline de datos para práctica de Git"
- 04.Visibilidad: Public (para que sea parte de tu portfolio) o Private
- 05.NO marques "Initialize with README" (ya tienes código local)
- 06.Click en "Create repository"
GitHub te mostrará una página con instrucciones. La que nos interesa es "…or push an existing repository from the command line" — porque nosotros YA tenemos un repo local y queremos subirlo.
### Paso 3: Conectar tu repo local con GitHub (git remote)
Ahora necesitas decirle a tu repo local: "oye, tienes una copia en la nube que se llama origin y está en esta URL de GitHub". Eso es un remote — una referencia a un repo remoto. origin es el nombre convencional para el remote principal (como main es el nombre convencional para la branch principal):
1# Conectar tu repo local con GitHub2# Sustituye TU-USUARIO por tu nombre de usuario de GitHub3git remote add origin https://github.com/TU-USUARIO/mi-pipeline.git45# Verificar que se añadió6git remote -v7# origin https://github.com/TU-USUARIO/mi-pipeline.git (fetch)8# origin https://github.com/TU-USUARIO/mi-pipeline.git (push)
Añadir GitHub como remote (origin)
origin no es un nombre mágico — es una convención. Podrías llamarlo "github" o "nube" si quisieras. Pero el 99.99% de repos usan origin, así que no seas creativo aquí. Los nombres creativos son para tus branches, no para tus remotes.
### Paso 4: Subir tu código (git push)
git push envía tus commits locales a GitHub. La primera vez, necesitas especificar a dónde enviar con -u (upstream tracking). Después, un simple git push basta:
1# Primera vez: establecer el tracking2git push -u origin main3# Git te pedirá autenticarte en GitHub.4# En 2024+, necesitas un Personal Access Token (no tu contraseña).5# Ve a GitHub → Settings → Developer settings → Personal access tokens6# → Tokens (classic) → Generate new token → Selecciona 'repo' scope.78# Después de la primera vez, solo necesitas:9git push10# (Git recuerda que main local → main en origin)
Subir tu código a GitHub por primera vez
GitHub ya NO acepta contraseñas desde 2021. Necesitas un Personal Access Token (PAT) o configurar SSH keys. El PAT es más sencillo para empezar: lo generas en GitHub, lo pegas como "contraseña" cuando Git te lo pide, y listo. Guárdalo en un lugar seguro porque solo lo ves una vez.
### Autenticación: PAT vs SSH
Tienes dos opciones para autenticarte con GitHub. Ambas son válidas — elige la que te resulte más cómoda:
- Personal Access Token (PAT): generas un token en GitHub y lo usas como contraseña. Más fácil de configurar. Ideal para empezar.
- SSH Keys: generas un par de claves en tu máquina y subes la pública a GitHub. Más seguro a largo plazo. No tienes que poner token cada vez.
1# Opción recomendada para empezar: GitHub CLI (gh)2# Instalar GitHub CLI:34# 🟦 Windows (PowerShell):5winget install --id GitHub.cli67# 🍎 Mac (Terminal):8brew install gh910# Autenticarse (abre el navegador):11gh auth login12# Selecciona: GitHub.com → HTTPS → Yes → Login with browser13# ¡Listo! Ya no te pedirá token nunca más.
La forma más fácil: GitHub CLI para autenticación
### git clone: descargar un repo existente
El caso inverso: alguien ya tiene un repo en GitHub y tú quieres descargarlo en tu máquina. Para eso existe git clone — crea una copia completa del repo (código + historial + branches + todo):
1# Clonar un repo público (no necesitas autenticación)2git clone https://github.com/usuario/nombre-repo.git34# Eso crea una carpeta nombre-repo/ con todo el proyecto5cd nombre-repo6git log --oneline # ¡todo el historial está aquí!7git branch -a # incluso las branches remotas
Clonar un repositorio existente
### git pull: traer cambios de GitHub a tu máquina
Cuando trabajas en equipo, tus compañeros suben cambios a GitHub constantemente. Para actualizar tu copia local con lo último que hay en GitHub, usas git pull. Es lo contrario de git push: push sube, pull baja.
1# Descargar los últimos cambios de GitHub2git pull34# Es equivalente a: git fetch + git merge5# fetch = "descarga los cambios pero no los apliques"6# merge = "aplica los cambios descargados"7# pull = "haz ambas cosas de una vez"
Actualizar tu repo local con cambios remotos
Rutina diaria en un equipo profesional: lo PRIMERO que haces al sentarte a trabajar es git pull en main para tener la última versión. Luego creas tu feature branch desde ese main actualizado. Así evitas trabajar sobre una versión desactualizada.
### Subir una branch a GitHub
No solo main va a GitHub. También subes tus feature branches — especialmente cuando quieres pedir una revisión (Pull Request, que veremos en la siguiente lección):
1# Crear branch local y trabajar2git switch -c feature/nueva-funcionalidad3# ... hacer cambios y commits ...45# Subir tu branch a GitHub (primera vez)6git push -u origin feature/nueva-funcionalidad78# Después de eso, simplemente:9git push
Subir una feature branch a GitHub
## ejercicios
Conecta tu repo local con GitHub
Escribe la secuencia completa de comandos para: crear un repo en GitHub (ya lo hiciste desde la web), conectarlo como remote, y subir tu código por primera vez.
Clona un repo público y explóralo
Clona un repo público de ejemplo, explora su historial y sus branches. Usa git log y git branch -a para ver qué tiene.
Sube una feature branch a GitHub
Crea una feature branch, haz un commit y súbela a GitHub. Después verifica que aparece en la web de GitHub.
Regístrate para guardar tu progreso.
## comentarios
Reporta erratas, ayuda a otros o comparte tu opinión. Sé constructivo.
Inicia sesión para comentar y responder.
cargando comentarios...