¿Por qué Git y GitHub?
Si alguna vez has sentido pánico al abrir una terminal y ver un prompt que espera tus órdenes, estás en el lugar correcto. Git no es tu enemigo: es un sistema de control de versiones que te salva de perder tu código, de no poder revertir cambios y de trabajar en equipo sin pisar los toes de los demás.
GitHub es la plataforma que aloja tus repositorios Git en la nube y te permite colaborar, revisar código, hacer pull requests y mucho más.
Instalación
En Linux
sudo apt update && sudo apt install git -y # Debian/Ubuntu
# o
sudo dnf install git # Fedora
# o
sudo pacman -S git # Arch Linux
En Windows
Descarga Git for Windows e instala con las opciones por defecto. Incluye Git Bash.
En Mac
brew install git # si tienes Homebrew
# o
xcode-select --install
Configuración inicial (hazlo una vez)
git config --global user.name "Tu Nombre"
git config --global user.email "tu@email.com"
git config --global init.defaultBranch main
Esto configura tu identidad para todos los commits. Usa la misma email que registraste en GitHub.
Primeros comandos
Crear un repositorio
mkdir mi-proyecto
cd mi-proyecto
git init
Ahora tienes un repositorio vacío. El comando git init crea una carpeta oculta .git donde Git guarda todo.
Tu primer commit
echo "# Mi Proyecto" > README.md
git add README.md
git commit -m " primer commit: añadir README"
Explicación:
git addprepara archivos para el próximo commit (los manda al staging area).git commitguarda un snapshot del staging area con un mensaje descriptivo.
Flujo de trabajo básico
El ciclo diario de Git es así:
- Modificas archivos en tu editor favorito.
git status— ves qué cambiaron.git add <archivo>ogit add .— preparas los cambios.git commit -m "mensaje descriptivo"— guardas el snapshot.git push— subes a GitHub (si ya tienes un remoto configurado).
Conectar con GitHub
# Crea un repositorio vacío en GitHub, luego:
git remote add origin https://github.com/tu-usuario/tu-repo.git
git branch -M main
git push -u origin main
La opción -u (–set-upstream) hace que futuros git push sin argumentos sepan a dónde enviar.
Comandos que usuarás el 90% del tiempo
| Comando | Para qué sirve |
|---|---|
git status |
Ver el estado actual del repositorio |
git log |
Ver historial de commits |
git add . |
Preparar todos los cambios para el próximo commit |
git commit -m "msg" |
Guardar un snapshot con mensaje |
git push |
Subir commits al repositorio remoto |
git pull |
Descargar cambios del remoto y fusionarlos |
git branch |
Ver branches locales |
git checkout -b nombre |
Crear y cambiar a un nuevo branch |
git merge nombre |
Fusionar un branch en el actual |
git clone url |
Descargar un repo existente |
Ejemplo: creando una feature en un branch
git checkout -b nueva-funcionalidad
# ... editas archivos ...
git add .
git commit -m "añadir funcionalidad X"
git push -u origin nueva-funcionalidad
Luego en GitHub creas un Pull Request para revisar y fusionar.
Consejos para no perder la cabeza
- Commitea seguido, con mensajes claros. Es tu seguro.
- No commitees secretos (claves API, contraseñas). Usa
.gitignore. git diffte muestra qué cambió entre commits o staged/unstaged.- Si algo sale mal:
git refloges tu amiga. Te muestra todo lo que hiciste.
Recursos para seguir aprendiendo
- Pro Git book (gratis, en español)
- Learn Git Branching — juego interactivo
- GitHub.com — crea tu cuenta gratis
¿Tienes dudas con algún comando? Déjame un comentario y te ayudo.

Leave a Reply