Git es un sistema de control de versiones libre que registra cada cambio hecho a los archivos de un proyecto, permite volver a cualquier versión anterior y facilita que varias personas trabajen sobre el mismo código sin pisarse. GitHub, en cambio, es un servicio en la nube de Microsoft para alojar repositorios Git y colaborar sobre ellos. Git es la herramienta; GitHub es un lugar donde guardarla y compartirla.
Qué es Git
Git lo creó Linus Torvalds en 2005 para desarrollar el kernel de Linux, después de que el proyecto perdiera acceso gratuito a la herramienta propietaria que usaba. Hoy es el sistema de control de versiones más usado del mundo. Se distribuye bajo la licencia GPL v2 y la versión estable más reciente, al momento de escribir esto, es la 2.56.0, publicada el 28 de septiembre de 2026.
Sus ideas clave:
- Repositorio. La carpeta del proyecto más todo su historial de cambios.
- Commit. Una fotografía del proyecto en un momento dado, con un mensaje que explica qué cambió y quién lo hizo.
- Rama (branch). Una línea de trabajo paralela. Puedes desarrollar una función nueva en una rama sin tocar la versión principal, y unirla cuando esté lista.
- Distribuido. Cada persona tiene una copia completa del repositorio con todo su historial. Puedes trabajar sin conexión y no dependes de un servidor central.
Git funciona en la terminal de Linux, macOS y Windows. Si nunca has usado la terminal, empieza por los comandos básicos de Linux.
Qué es GitHub
GitHub es una plataforma web, lanzada en 2008 y comprada por Microsoft en 2018, donde se alojan repositorios Git. Agrega lo que Git no trae por sí solo: una interfaz web, gestión de usuarios y permisos, y herramientas para colaborar.
Lo que ofrece además de alojar el código:
- Pull requests: proponer cambios para que otros los revisen antes de unirlos.
- Issues: registrar errores y tareas.
- GitHub Actions: ejecutar pruebas y despliegues automáticos en cada cambio.
- GitHub Pages: publicar sitios estáticos gratis desde un repositorio.
Su plan gratuito incluye repositorios públicos y privados ilimitados y 2.000 minutos mensuales de Actions para repositorios privados. Los planes Team y Enterprise agregan más minutos, almacenamiento y funciones de administración. GitHub es un servicio propietario: el código de la plataforma no es libre, aunque aloja millones de proyectos libres.
Diferencia entre Git y GitHub
| Git | GitHub | |
|---|---|---|
| Qué es | Programa de control de versiones | Servicio web para alojar repositorios Git |
| Dónde funciona | En tu computador | En la nube |
| Licencia | Libre (GPL v2) | Propietario |
| Dueño | Comunidad, mantenido por voluntarios y empresas | Microsoft |
| Necesita internet | No | Sí |
| Para qué sirve | Registrar y combinar cambios | Compartir, revisar y automatizar |
Puedes usar Git sin GitHub, guardando el repositorio solo en tu equipo o en un servidor propio. Lo que no puedes es usar GitHub sin Git: todo lo que hace se apoya en él.
Comandos básicos de Git
Los comandos que se usan en el día a día:
| Comando | Qué hace |
|---|---|
git init |
Crea un repositorio nuevo en la carpeta actual |
git clone <url> |
Descarga una copia de un repositorio existente |
git status |
Muestra qué archivos cambiaron |
git add <archivo> |
Marca cambios para incluirlos en el próximo commit |
git commit -m "mensaje" |
Guarda los cambios marcados con un mensaje |
git log |
Muestra el historial de commits |
git branch <nombre> |
Crea una rama |
git switch <nombre> |
Cambia a otra rama |
git merge <rama> |
Une los cambios de otra rama a la actual |
git pull |
Trae los cambios del repositorio remoto |
git push |
Envía tus commits al repositorio remoto |
Un flujo mínimo para empezar un proyecto y subirlo a GitHub o GitLab:
- Configura tu nombre y correo, una sola vez:
git config --global user.name "Tu Nombre"ygit config --global user.email "tu@correo.com". - Entra a la carpeta del proyecto y ejecuta
git init. - Agrega los archivos con
git add .y guarda el primer commit congit commit -m "Primer commit". - Crea un repositorio vacío en la plataforma que elijas y copia su dirección.
- Conéctalo con
git remote add origin <url>y súbelo congit push -u origin main.
GitLab y otras alternativas a GitHub
GitLab es la alternativa más conocida. Ofrece un servicio en la nube (gitlab.com) y, a diferencia de GitHub, también se puede instalar en un servidor propio. Su edición Community Edition tiene licencia MIT y es gratuita; la Enterprise Edition agrega funciones de pago. Incluye repositorios, revisión de código, issues y un sistema de integración continua propio (GitLab CI/CD).
Otras opciones libres para alojar repositorios en tu propio servidor:
- Forgejo: liviano, fácil de instalar y gobernado por la comunidad. Es la base de Codeberg, un servicio gratuito sin fines de lucro para proyectos libres.
- Gitea: el proyecto del que nació Forgejo en 2022; ambos son muy parecidos en funciones.
| GitHub | GitLab CE | Forgejo | |
|---|---|---|---|
| Licencia de la plataforma | Propietaria | MIT | GPL v3 |
| Instalación propia | Solo con Enterprise de pago | Sí, gratis | Sí, gratis |
| Recursos que necesita | No aplica | Altos | Bajos |
| Comunidad y visibilidad | La más grande | Grande | Más pequeña |
La principal limitación de estas alternativas es la visibilidad: la mayoría de los proyectos y desarrolladores están en GitHub, y publicar ahí sigue siendo la forma más fácil de que otros encuentren tu código. GitLab propio tiene sentido cuando quieres el código dentro de tu infraestructura; pide un servidor con bastante memoria. Forgejo o Gitea son mejores si el servidor es pequeño.
Para qué sirve Git fuera de la programación
Git se diseñó para código, pero funciona con cualquier archivo de texto: documentación, artículos en Markdown, configuraciones de servidores o libros. Este mismo blog se escribe en archivos Markdown versionados con Git. Con archivos binarios grandes, como videos o documentos de Word, funciona peor: guarda cada versión completa y no puede mostrar qué cambió dentro.
Si estás empezando a programar, aprender Git es de lo primero que conviene hacer. Lo piden prácticamente todos los equipos de desarrollo, como se explica en cómo convertirse en desarrollador de software.
Preguntas frecuentes
¿Git y GitHub son lo mismo? No. Git es un programa libre de control de versiones que corre en tu computador. GitHub es un servicio web de Microsoft para alojar repositorios Git y colaborar sobre ellos.
¿GitHub es gratis? Sí, para la mayoría de los usos. El plan gratuito incluye repositorios públicos y privados ilimitados, y los planes de pago agregan minutos de automatización, almacenamiento y administración.
¿Qué es mejor, GitHub o GitLab? Depende del uso. GitHub tiene la comunidad más grande y conviene para proyectos públicos; GitLab conviene si quieres instalarlo en tu propio servidor con una edición libre.
¿Se puede usar Git sin internet? Sí. Git guarda el historial completo en tu equipo, así que puedes hacer commits, ver el historial y crear ramas sin conexión. Solo necesitas internet para sincronizar con un repositorio remoto.
¿Quién creó Git? Linus Torvalds, el creador de Linux, en 2005. Desde entonces lo mantiene una comunidad de voluntarios y empresas.
Fuentes
- Git, sitio oficial.
- Pro Git, libro oficial de Git en español.
- Precios de GitHub, GitHub.
- Licencia de GitLab FOSS, GitLab.
- Forgejo, sitio oficial.