← Git

Fundamentos de Git

¿Cuál es la diferencia entre Git y GitHub?

Ver respuesta — intenta responderla en voz alta primero

Git es la herramienta de control de versiones que corre en tu máquina. GitHub es un servicio en la nube para alojar repositorios Git y colaborar (pull requests, issues, revisión de código). Puedes usar Git sin GitHub, pero no GitHub sin Git.

Es un error muy común mezclarlos porque casi siempre se usan juntos.

  • Git: el programa que instalas y usas en la terminal. Hace commits, ramas, merges. Todo el control de versiones ocurre aquí, en local.
  • GitHub: una plataforma web (de una empresa, propiedad de Microsoft) donde subes tus repositorios de Git para guardarlos en la nube, compartirlos y colaborar. Alternativas: GitLab, Bitbucket.

Analogía: Git es como la habilidad de escribir; GitHub es como Google Docs, un lugar en la nube donde guardas y compartes lo que escribiste. GitHub añade cosas que Git no tiene por sí solo: pull requests, issues, permisos de equipo, CI/CD, etc.

# Git (local): crear un repo y hacer un commit, sin internet
git init
git add .
git commit -m "Primer commit"

# GitHub (remoto): conectar tu repo local con uno en GitHub y subirlo
git remote add origin https://github.com/usuario/mi-repo.git
git push -u origin main
# push envía tus commits locales al servidor remoto (GitHub)

Decir "subí mi código a Git" cuando en realidad se subió a GitHub. Git no es un lugar al que "subes" cosas; es la herramienta. También es un error creer que necesitas una cuenta de GitHub para usar Git: puedes versionar proyectos totalmente en local sin ninguna cuenta.

"Git es la herramienta de control de versiones que corre en mi máquina; ahí hago los commits, las ramas y los merges. GitHub es un servicio en la nube para alojar repositorios Git y colaborar, con cosas como pull requests, issues y revisión de código. Puedo usar Git perfectamente sin GitHub, pero GitHub sin Git no tiene sentido. Alternativas a GitHub serían GitLab o Bitbucket."

Reto rápido

Si borras tu proyecto de GitHub pero tienes una copia clonada en tu computadora, ¿pierdes el historial de commits?

Ver respuesta

No. Como Git es distribuido, tu copia local (el clon) contiene el repositorio completo, incluido todo el historial. Podrías crear un nuevo repositorio remoto y hacer git push para volver a subirlo. GitHub es solo una copia alojada en la nube, no la única fuente de verdad.