╔════════════════════════════════════════════════════════════╗
║ ║
║ ██████╗ ██╗████████╗ ██╗ ██╗██╗ ██╗██████╗ ║
║ ██╔════╝ ██║╚══██╔══╝ ██║ ██║██║ ██║██╔══██╗ ║
║ ██║ ███╗██║ ██║ ███████║██║ ██║██████╔╝ ║
║ ██║ ██║██║ ██║ ██╔══██║██║ ██║██╔══██╗ ║
║ ╚██████╔╝██║ ██║ ██║ ██║╚██████╔╝██████╔╝ ║
║ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ║
║ ║
╚════════════════════════════════════════════════════════════╝
Guía completa de control de versiones para desarrolladores
Este repositorio toma como base mis apuntes del curso oficial de Google en Coursera: 'Introduction to Git and GitHub', pero lo he expandido y actualizado de forma independiente. He añadido comandos modernos (como git switch y git restore), estándares de la industria (como Conventional Commits) y algunas herramientas avanzadas.
El objetivo es servir como una guía de consulta rápida para repasar conceptos clave y como material de aprendizaje paso a paso de cómo funcionan tanto Git como GitHub.
graph LR
A[Módulo 1<br/>Fundamentos Locales] --> B[Módulo 2<br/>Ramas y Fusiones]
B --> C[Módulo 3<br/>GitHub y Remotos]
C --> D[Módulo 4<br/>Colaboración y CI/CD]
style A fill:#3498db,stroke:#2980b9,color:#fff
style B fill:#2ecc71,stroke:#27ae60,color:#fff
style C fill:#f1c40f,stroke:#f39c12,color:#fff
style D fill:#e74c3c,stroke:#c0392b,color:#fff
guia-git-github/
│
├── 📘 01-introduccion-control-de-versiones/
│ ├── Flujo de trabajo básico (add, commit, status)
│ └── Estructura de Git y anatomía de commits
│
├── 📗 02-git-localmente/
│ ├── Deshacer cambios (reset, revert, amend)
│ └── Trabajo con ramas y resolución de conflictos
│
├── 📙 03-github-remoto/
│ ├── Sincronización remota (clone, push, pull, fetch)
│ ├── git rebase y flujos de trabajo en equipo
│ └── Seguridad: claves SSH y API tokens
│
└── 📕 04-colaboracion/
├── Forks, Pull Requests y Revisiones de Código
└── Integración Continua (CI/CD) e Issue Trackers
Domina el control de versiones en tu máquina local
El punto de partida. Aprenderás el ciclo de vida de los cambios en Git, cómo navegar el historial de commits y cómo trabajar con ramas para organizar tu desarrollo.
Flujos avanzados de control de versiones local
Aprenderás a deshacer errores, saltar áreas de preparación, leer historiales de parches y gestionar de manera efectiva las fusiones (merges) y ramas en tu equipo.
Lleva tu trabajo a la nube y colabora con otros
Aprenderás a sincronizar tu repositorio local con GitHub, flujos de trabajo Pull-Merge-Push, rebasing lineal y uso seguro de autenticación por SSH.
Contribuye a proyectos open source y trabaja en equipo
Todo lo que necesitas para colaborar en proyectos de los que no eres miembro usando forks y pull requests, además de automatizar pruebas con CI/CD.
¿Eres nuevo en Git? → Empieza por la carpeta 01
¿Ya usas Git localmente? → Salta a la carpeta 02 o 03
¿Quieres colaborar mejor? → Ve a la carpeta 04
¿Necesitas un comando? → Busca en el README de cada módulo
¿Encontraste un error? ¿Tienes algo que añadir? Las contribuciones son bienvenidas:
- Haz un fork de este repositorio.
- Crea una rama:
git checkout -b mejora/descripcion. - Realiza tus cambios y haz commit.
- Envía un pull request con una descripción clara.