¿Alguna vez has trabajado en un proyecto y te has encontrado con la frustración de perder cambios importantes o no saber cómo volver a una versión anterior de tu código?
O quizás has colaborado con un equipo y te has preguntado cómo mantener todo organizado sin pisar el trabajo de los demás. Aquí es donde Git y GitHub entran en escena.
En este post, te explicaré qué son, para qué sirven, cómo usarlos y cómo pueden convertirse en tus mejores aliados en el desarrollo de software.
¿Qué son Git y GitHub?
Git es un sistema de control de versiones distribuido. En palabras simples, es una herramienta que te permite guardar «fotos» (llamadas commits) de tu proyecto en diferentes momentos. Esto te permite volver atrás si algo sale mal, comparar cambios o trabajar en nuevas funcionalidades sin afectar la versión principal.
GitHub, por otro lado, es una plataforma en la nube que utiliza Git para alojar proyectos. Piensa en GitHub como una red social para desarrolladores: puedes subir tus proyectos, colaborar con otros, revisar código y mucho más.
¿Para qué se utilizan?
- Control de versiones: Git te permite guardar el historial de cambios en tu proyecto.
- Colaboración: GitHub facilita el trabajo en equipo, permitiendo que varias personas trabajen en el mismo proyecto sin conflictos.
- Organización: Puedes crear ramas (branches) para trabajar en nuevas funcionalidades sin afectar el código principal.
- Portafolio: GitHub es una excelente vitrina para mostrar tus proyectos a posibles empleadores.
Configuración inicial
1. Instalar Git
- Descarga Git desde git-scm.com.
- Sigue las instrucciones de instalación para tu sistema operativo.
2. Configurar Git
Abre tu terminal o consola y ejecuta los siguientes comandos para configurar tu nombre y correo:
git config --global user.name "Tu Nombre"
git config --global user.email "tuemail@ejemplo.com"
3. Crear una cuenta en GitHub
- Ve a github.com y regístrate.
- Una vez registrado, crea un nuevo repositorio (un lugar donde se almacenará tu proyecto).
4. Conectar Git con GitHub
- Genera una clave SSH para conectarte de forma segura a GitHub. Sigue las instrucciones en GitHub Docs.
Fundamentos de Git
1. Inicializar un repositorio
Para empezar a usar Git en tu proyecto, abre la terminal en la carpeta del proyecto y ejecuta:
git init
2. Añadir cambios al staging area
El staging area es como una «zona de preparación» donde seleccionas los cambios que quieres guardar en el próximo commit.
git add nombre_del_archivo
O si quieres añadir todos los cambios:
git add .
3. Guardar cambios (commit)
Un commit es como una foto instantánea de tu proyecto en ese momento.
git commit -m "Descripción breve de los cambios"
Es recomendable aprender a escribir commits descriptivos. Porque si en algún futuro quieres echar para atrás o buscar desde dónde se originó el bug, y no has tenido un buen commit, será díficil hacer el cambio y tendrás que trabajar más.
4. Subir cambios a GitHub (push)
Para subir tus cambios a GitHub, debes añadir el origen del repositorio a donde quieres subir los cambios y hacer push
para subirlo:
git remote add origin https://github.com/tu-usuario/tu-repositorio.git
git push -u origin main
5. Actualizar tu repositorio local (pull)
Si alguien más ha hecho cambios en el repositorio, o si adelantes el proyecto desde otra computadora y quieres traer tus cambios, puedes actualizar tu copia local con:
git pull origin main
Flujo de trabajo típico en Git
- Crea una rama para trabajar en una nueva funcionalidad:
git checkout -b nueva-funcionalidad
- Haz cambios en tu código y guárdalos con
git add
ygit commit
. - Sube tus cambios a GitHub:
git push origin nueva-funcionalidad
- Crea un Pull Request (PR) en GitHub para que tus cambios sean revisados y fusionados con la rama principal.
- Actualiza tu repositorio local después de que los cambios sean fusionados:
git checkout main
git pull origin main
Ejemplos cotidianos
- Git como una línea de tiempo: Imagina que estás escribiendo un libro. Cada vez que terminas un capítulo, tomas una foto de todas las páginas. Si decides que el último capítulo no te gusta, puedes volver a la foto anterior y continuar desde ahí. Git hace lo mismo con tu código.
- GitHub como una biblioteca: Piensa en GitHub como una biblioteca donde puedes guardar tus libros (proyectos) y prestarlos a otros para que los lean o los mejoren.
Conclusión
Git y GitHub son herramientas esenciales para cualquier desarrollador, ya sea que trabajes solo o en equipo. Te permiten mantener un historial de cambios, colaborar eficientemente y organizar tu trabajo de manera profesional. Además, GitHub es una excelente plataforma para mostrar tus proyectos al mundo.
5 Retos para Practicar
Para expandir tus horizontes, te invito a que investigues más comandos de git para que practiques. Aquí te dejaré unos retos para que pongas a prueba lo que aprendiste.
- Crea tu primer repositorio: Inicializa un repositorio local, añade algunos archivos y súbelos a GitHub.
- Trabaja con ramas: Crea una rama para una nueva funcionalidad, haz cambios y fusiona la rama con
main
. - Colabora con otros: Invita a un amigo a tu repositorio y practica haciendo cambios juntos.
- Resuelve un conflicto: Provoca un conflicto de fusión (merge conflict) y aprende a resolverlo.
- Explora GitHub: Busca un proyecto de código abierto, haz un fork y contribuye con un pequeño cambio.
¡Ahora es tu momento de brillar y sacarle provecho al mundo de Git y GitHub! Si tienes alguna duda, no dudes en dejarla en los comentarios 🚀
Sigueme en mis redes sociales para más contenido