Git y GitHub: primeros pasos¶
Esta guía presenta Git para el trabajo diario del curso y GitHub como plataforma para alojar repositorios y colaborar. Git es el sistema de control de versiones que registra cambios; GitHub es un servicio donde se comparten repositorios Git y se coordinan revisiones mediante Pull Requests.
¿Por qué usamos Git?¶
Git guarda el historial del proyecto y quién hizo cada cambio. Permite trabajar en paralelo con ramas, revisar cambios antes de integrarlos, volver a versiones anteriores y compartir el código con el equipo. El control de versiones es una práctica esencial en equipos profesionales: el código deja de depender de una sola copia en un ordenador.
En el flujo de este curso:
maincontiene las versiones estables.developintegra el trabajo del grupo.- Cada tarea se desarrolla en una rama
feature/nombre-de-la-tarea. - Se abre una Pull Request hacia
develop; otra persona revisa el cambio antes del merge.
Flujo visual de ramas¶
En el curso se trabajará con main como versión estable, develop para integrar el trabajo del grupo y ramas feature/* para cambios concretos. Una Pull Request permite revisar el cambio antes de fusionarlo en develop.
gitGraph
commit id: "versión inicial"
branch develop
checkout develop
commit id: "base de trabajo"
branch featureProyecto
checkout featureProyecto
commit id: "cambio 1"
commit id: "cambio 2"
checkout develop
merge featureProyecto id: "merge tras revisión"
checkout main
merge develop id: "versión estable"
Configuración inicial de Git¶
Comprueba que Git está disponible:
git --version
Configura el nombre y el correo que aparecerán en tus commits. Hazlo una vez en tu entorno, sustituyendo los valores por los tuyos:
git config --global user.name "Nombre Apellido"
git config --global user.email "tu-correo@example.com"
El correo debe ser uno que controles. Puedes configurar en GitHub el uso de una dirección privada para que tus commits no publiquen tu correo personal.
Comandos básicos¶
Ejecuta los comandos desde la carpeta del proyecto:
| Comando | Para qué sirve |
|---|---|
git status |
Muestra la rama actual y los archivos modificados o preparados. |
git add archivo |
Prepara un archivo para el próximo commit. |
git add . |
Prepara todos los cambios del directorio actual; revisa antes git status. |
git commit -m "Descripción breve" |
Guarda un punto del historial con los cambios preparados. |
git log --oneline |
Consulta el historial resumido. |
git branch |
Lista las ramas locales. |
git switch -c feature/nombre |
Crea una rama y cambia a ella. |
git switch develop |
Cambia a una rama existente. |
git merge feature/nombre |
Integra esa rama en la rama actual. |
git pull |
Trae e integra cambios del repositorio remoto en la rama actual. |
git push -u origin feature/nombre |
Publica la rama local en el remoto y la vincula para siguientes push/pull. |
git clone URL |
Descarga un repositorio remoto y crea una copia local. |
Un ciclo habitual para una tarea:
git switch develop
git pull
git switch -c feature/ficha-proyecto
# Editar y guardar los archivos
git status
git add ruta/del/archivo.md
git commit -m "Añade ficha de proyecto"
git push -u origin feature/ficha-proyecto
Después se crea una Pull Request en GitHub desde feature/ficha-proyecto hacia develop. Tras la revisión, se realiza el merge según las normas del equipo. No trabajes directamente en main.
Crear una cuenta gratuita en GitHub¶
- Entra en github.com/signup y sigue el formulario de registro. También pueden aparecer opciones de acceso con Google o Apple.
- Elige un nombre de usuario que puedas compartir con tu grupo y completa el registro con una contraseña única y segura.
- Selecciona GitHub Free si se te pide elegir un plan. Para una cuenta personal, el plan gratuito permite repositorios públicos ilimitados y privados ilimitados con algunas funciones sujetas a límites del plan.
- Verifica la dirección de correo electrónico siguiendo el mensaje que envía GitHub.
- Activa la autenticación en dos pasos (2FA) en la configuración de seguridad de la cuenta.
- Comparte con el formador y tu grupo tu nombre de usuario de GitHub para que puedan invitarte al repositorio del proyecto.
Para las prácticas, crea o utiliza la cuenta personal que indique el formador. No publiques contraseñas, tokens ni claves privadas en un repositorio, un commit, una incidencia o una Pull Request.
Los nombres de botones o pasos del alta pueden variar con el tiempo. Consulta la guía oficial para crear una cuenta si la pantalla no coincide. GitHub recomienda verificar el correo y configurar 2FA; la disponibilidad de funciones depende del plan elegido.
Git y GitHub no son lo mismo¶
| Git | GitHub |
|---|---|
| Programa/sistema de control de versiones. | Plataforma web para alojar repositorios Git y colaborar. |
| Funciona en tu equipo, incluso sin conexión para muchas tareas. | Requiere conexión para sincronizar y usar sus herramientas web. |
Comandos habituales: status, add, commit, branch, merge. |
Funciones habituales: repositorios remotos, Pull Requests, revisiones e incidencias. |