EBAC Logotipo
Menú

1.6 Conoce el control de versiones con Git

Comprender los fundamentos del control de versiones con Git y utilizar comandos básicos para gestionar versiones de proyectos en forma local y remota (GitHub).

1. ¿Qué es un control de versiones?

Un sistema de control de versiones (VCS, por sus siglas en inglés: Version Control System) es una herramienta que permite registrar y gestionar los cambios realizados en archivos a lo largo del tiempo.


Imagina que estás trabajando en un documento importante y quieres conservar todas las versiones que vas creando. Tal vez te resulte familiar algo así en tu escritorio:

tesis.doc
tesis_final.doc
tesis_final_ahora_si.doc
tesis_final_v2.doc
...

Este método es común, pero puede volverse confuso rápidamente.


Con un sistema de control de versiones, puedes mantener un solo archivo con un historial completo integrado.

2. ¿Qué tipos de sistemas existen?

Local [RCS, SCCS]

  1. El historial de versiones solo existe en una computadora.
  2. Problema: si pierdes esa máquina, pierdes todo.


Centralizado [Subversion (SVN), CVS]

  1. Hay un servidor principal donde se guardan todas las versiones.
  2. Los usuarios deben conectarse al servidor para colaborar.
  3. Problema: si el servidor falla, todos se ven afectados.


Distribuido [Git, Mercurial]

  1. Cada persona tiene una copia completa del historial del proyecto en su máquina.
  2. Se puede trabajar sin conexión y sincronizar después.
  3. Ventaja: más rápido, más seguro, más flexible.

3. Plataformas que trabajan con Git

Git es un sistema de control de versiones local, pero para colaborar en equipo o alojar proyectos en la nube, se usan plataformas como:


Plataforma

Empresa Dueña

Enfoque Principal

Gratis para Repos Privados

Características Clave

GitHub

Microsoft

Open-Source & Comunidad

(Límite de colaboradores)

- Más popular (millones de proyectos)

- GitHub Actions (CI/CD)

- Copilot (IA para código)

GitLab

GitLab Inc.

DevOps Empresarial

(ilimitados)

- Todo-en-uno (CI/CD, Docker, Kubernetes)

- Más personalizable

Bitbucket

Atlassian

Equipos Empresariales

(hasta 5 usuarios)

- Integración con Jira y Trello

- Bueno para equipos pequeños



4. ¿Por Qué Usar Git?

Git es el estándar en control de versiones, aunque existen alternativas como Subversión (SVN) o Mercurial. Su popularidad radica en que es open-source, rápido, escalable y cuenta con una comunidad global que lo respalda.


  1. Historial Detallado: Registra qué cambió, quién lo modificó y cuándo, con la posibilidad de revisar cualquier versión anterior.
  2. Recuperación Sin Estrés: ¿Borraste algo importante? Git te permite volver atrás en segundos.
  3. Trabajo en Equipo Fluido: Varias personas pueden colaborar en un mismo proyecto sin conflictos, gracias al manejo de ramas (branches) y fusiones (merges).
  4. Experimentación Segura: Prueba nuevas ideas en entornos aislados sin afectar la versión principal.


5. ¿Por qué usar GitHub?

  1. Es el estándar global para compartir y colaborar en código
  2. Soporte y respaldo de Microsoft desde 2018
  3. Comunidad activa con millones de desarrolladores
  4. Permite mostrar tu trabajo como portafolio profesional
  5. Funciona como red social de desarrolladores
  6. Compatible con herramientas y flujos de trabajo modernos

6. ¿Cómo funciona un control de versiones con git y github?

  1. Con Git creas un repositorio local en tu computadora, donde se guarda el historial de cambios de tu proyecto.
  2. Agregas tus archivos y haces commits, que son como “fotos” del estado del proyecto en distintos momentos.
  3. Puedes revisar el historial, volver atrás, comparar versiones o crear ramas para trabajar en nuevas ideas sin afectar el código principal.
  4. Con GitHub, subes ese repositorio a la nube para respaldarlo, compartirlo o colaborar con otras personas.
  5. Git se encarga de guardar los cambios, y GitHub de almacenarlos en línea y facilitar el trabajo en equipo.