Si llevas poco tiempo en el mundo del desarrollo web, seguramente has escuchado la palabra Git en algún tutorial o en clase. Pero ¿qué es exactamente y por qué todo el mundo lo usa? En esta guía te lo explico desde cero, sin tecnicismos innecesarios.
¿Qué es Git?
Git es un sistema de control de versiones. Dicho de forma sencilla: es una herramienta que guarda el historial completo de todos los cambios que haces en tu código. Cada vez que modificas un archivo, Git puede recordar cómo estaba antes, quién lo cambió y cuándo.
Imagina que estás escribiendo un trabajo importante en Word. Cada vez que haces un cambio importante, guardas una copia: «trabajo_v1.docx», «trabajo_v2.docx», «trabajo_final.docx», «trabajo_final_ESTE_SI.docx»… Git hace exactamente eso, pero de forma automática, organizada y sin llenar tu disco duro de copias.
¿Para qué sirve Git?
Git sirve principalmente para tres cosas:
- Guardar el historial de tu código: puedes volver a cualquier versión anterior de tu proyecto en cualquier momento. Si rompes algo, puedes recuperar el código que funcionaba.
- Trabajar en equipo: varias personas pueden trabajar en el mismo proyecto al mismo tiempo sin pisarse el trabajo. Git gestiona los cambios de cada uno y los combina.
- Experimentar sin miedo: puedes crear una «rama» de tu proyecto, probar cosas nuevas y, si no funcionan, simplemente descartarla sin afectar al código principal.
Git vs GitHub: ¿son lo mismo?
Esta es la confusión más común entre los que empiezan. No son lo mismo, aunque van de la mano.
- Git es la herramienta que se instala en tu ordenador y gestiona el historial de cambios localmente.
- GitHub es una plataforma web donde puedes subir tu repositorio de Git para guardarlo en la nube, compartirlo con otros o colaborar en proyectos.
La analogía sería: Git es como Word y GitHub es como Google Drive. Uno es la herramienta, el otro es donde guardas y compartes lo que haces con esa herramienta.
Conceptos básicos de Git que debes conocer
Antes de ponerte a usar Git, hay algunos términos que aparecen constantemente y conviene entender:
Repositorio (repo)
Es la carpeta de tu proyecto gestionada por Git. Contiene todos tus archivos y el historial completo de cambios. Puede estar en tu ordenador (repositorio local) o en GitHub (repositorio remoto).
Commit
Un commit es como una «foto» de tu proyecto en un momento concreto. Cada vez que haces un commit, Git guarda el estado actual de tus archivos con un mensaje descriptivo. Por ejemplo: «Añadido formulario de contacto» o «Corregido bug en el login».
Branch (rama)
Una rama es una línea de desarrollo independiente. La rama principal se llama main (antes se llamaba master). Cuando quieres añadir una nueva funcionalidad sin tocar el código estable, creas una rama nueva, trabajas ahí y luego la unes a la principal.
Merge
Es el proceso de combinar los cambios de una rama con otra. Cuando terminas de desarrollar una funcionalidad en una rama, haces un merge para incorporar esos cambios a la rama principal.
Clone
Clonar un repositorio significa descargarte una copia completa de él en tu ordenador, incluyendo todo el historial de commits.
Los comandos de Git más usados
No necesitas memorizar todos los comandos de Git para empezar. Con estos cinco cubres el 90% de tu trabajo diario:
# Inicializar un repositorio en una carpeta
git init
# Ver el estado de los archivos modificados
git status
# Añadir archivos al área de preparación (staging)
git add .
# Hacer un commit con un mensaje descriptivo
git commit -m "Tu mensaje aquí"
# Subir los cambios a GitHub
git push origin main
¿Cómo instalar Git?
La instalación es sencilla en cualquier sistema operativo:
Windows
Descarga el instalador desde git-scm.com y ejecútalo. Durante la instalación deja todas las opciones por defecto. Esto instalará también Git Bash, un terminal para usar Git en Windows.
Mac
Abre el terminal y escribe:
git --version
Si no lo tienes instalado, el sistema te pedirá que instales las herramientas de desarrollo de Xcode. Acepta y se instalará automáticamente.
Linux (Ubuntu/Debian)
sudo apt update
sudo apt install git
Para verificar que Git está instalado correctamente en cualquier sistema:
git --version
Configuración inicial de Git
Después de instalar Git, lo primero que debes hacer es configurar tu nombre y email. Git los usa para identificar quién hace cada commit:
git config --global user.name "Tu Nombre"
git config --global user.email "tu@email.com"
Solo tienes que hacerlo una vez. A partir de ahí Git recordará tu identidad en todos los proyectos.
Flujo de trabajo básico con Git
Para que lo veas claro, así sería el flujo de trabajo típico cuando empiezas un proyecto nuevo:
- Creas una carpeta para tu proyecto y entras en ella
- Ejecutas
git initpara inicializar el repositorio - Creas tus archivos y escribes código
- Ejecutas
git add .para preparar los cambios - Ejecutas
git commit -m "Primer commit"para guardarlos - Sigues trabajando, haciendo commits cada vez que terminas algo importante
Con el tiempo esto se convierte en algo automático que haces sin pensar.
¿Por qué aprender Git desde el principio?
Muchos estudiantes de programación dejan Git para más adelante y es un error. Cuanto antes lo incorpores a tu flujo de trabajo, mejor. Por varias razones:
- Todas las empresas lo usan. Es imprescindible en cualquier trabajo de desarrollo.
- Te protege de perder trabajo. Con Git, perder código por accidente es prácticamente imposible.
- GitHub es tu portfolio. Los reclutadores miran tu perfil de GitHub para ver qué proyectos tienes y cómo trabajas.
Próximos pasos
Ahora que ya sabes qué es Git y para qué sirve, el siguiente paso es practicar. Instálalo, configúralo y empieza a hacer commits en tu próximo proyecto, aunque sea pequeño. La práctica es la única forma de interiorizar los comandos.
Si quieres profundizar más, en el próximo artículo te explico cómo usar Git con GitHub para subir tus proyectos a la nube y empezar a construir tu portfolio como desarrollador.