Skip to content
Tecnología · 3o de Preparatoria

Ideas de aprendizaje activo

Control de Versiones con Git

El control de versiones con Git requiere práctica activa porque los conceptos de historiales, ramas y fusiones se entienden mejor cuando los estudiantes experimentan los errores y soluciones en tiempo real. La manipulación directa de un repositorio ayuda a internalizar que Git no es solo una herramienta técnica, sino un sistema de organización colaborativa donde cada acción tiene consecuencias visibles en el proyecto.

Aprendizajes Esperados SEPSEP EMS: Gestión de Proyectos TecnológicosSEP EMS: Herramientas de Desarrollo
30–60 minParejas → Toda la clase4 actividades

Actividad 01

Pensar-Emparejar-Compartir30 min · Individual

Taller Inicial: Configuración de Repositorio

Guía a los estudiantes para instalar Git, crear un repositorio local e inicializarlo con git init. Realizan commits iniciales con mensajes descriptivos y clonan el repositorio a sus máquinas. Finalmente, verifican el historial con git log.

¿Cómo Git permite el trabajo colaborativo sin sobrescribir el código de otros desarrolladores?

Consejo de FacilitaciónEn el Taller Inicial, guíe a los estudiantes paso a paso en la configuración de Git en sus máquinas para evitar frustraciones técnicas tempranas que bloqueen el aprendizaje del concepto.

Qué observarEntregue a cada estudiante una tarjeta con un escenario simple: 'Has añadido una nueva función a tu proyecto en una rama llamada 'feature-x', y tu compañero ha corregido un error en la rama 'main'. ¿Qué comando usarías para traer los cambios de 'main' a tu rama 'feature-x' y por qué?'

ComprenderAplicarAnalizarAutoconcienciaHabilidades de Relación
Generar Clase Completa

Actividad 02

Pensar-Emparejar-Compartir45 min · Grupos pequeños

Práctica Colaborativa: Ramas y Fusiones

En grupos, crean una rama feature para agregar una función simple a un proyecto compartido en GitHub. Fusionan la rama a main con pull request y discuten diferencias. Repiten con otra rama para comparar flujos.

¿De qué manera las ramas facilitan el desarrollo de nuevas funcionalidades de forma aislada?

Consejo de FacilitaciónDurante la Práctica Colaborativa, asigne roles específicos (por ejemplo, uno crea la rama y otro hace el merge) para que todos participen activamente en el proceso de fusión.

Qué observarEn parejas, un estudiante simula hacer un commit y el otro intenta hacer un commit diferente en el mismo archivo. El primer estudiante debe explicar cómo resolvería el conflicto resultante utilizando comandos de Git. El segundo estudiante evalúa si la explicación es clara y si los pasos propuestos son correctos.

ComprenderAplicarAnalizarAutoconcienciaHabilidades de Relación
Generar Clase Completa

Actividad 03

Juego de Simulación40 min · Grupos pequeños

Juego de Simulación: Resolución de Conflictos

Dos subgrupos editan el mismo archivo en ramas separadas, luego intentan merge para generar un conflicto intencional. Usan git status y editores para resolverlo manualmente, commit y push. Debrief como clase.

¿Por qué el historial de versiones es crucial para la depuración y el mantenimiento del software?

Consejo de FacilitaciónEn la Simulación de Resolución de Conflictos, entregue archivos con cambios deliberados en las mismas líneas para que los estudiantes practiquen la comparación visual y la edición manual, no solo la teoría.

Qué observarMuestre en pantalla un log de Git simplificado con varios commits y ramas. Pregunte a los estudiantes: '¿Cuál commit representa el último cambio estable?' o '¿Qué rama creen que contiene el desarrollo más reciente de una nueva característica?'

AplicarAnalizarEvaluarCrearConciencia SocialToma de Decisiones
Generar Clase Completa

Actividad 04

Pensar-Emparejar-Compartir60 min · Grupos pequeños

Proyecto Final: Desarrollo en Equipo

Asigna un proyecto web simple; cada estudiante crea rama personal, agrega código y abre pull requests. Revisa y mergea como equipo, usando issues para rastrear tareas. Presenta el historial final.

¿Cómo Git permite el trabajo colaborativo sin sobrescribir el código de otros desarrolladores?

Consejo de FacilitaciónEn el Proyecto Final, establezca una lista de verificación clara con criterios de evaluación para que los equipos autoevalúen su progreso en ramas, commits y trabajo colaborativo.

Qué observarEntregue a cada estudiante una tarjeta con un escenario simple: 'Has añadido una nueva función a tu proyecto en una rama llamada 'feature-x', y tu compañero ha corregido un error en la rama 'main'. ¿Qué comando usarías para traer los cambios de 'main' a tu rama 'feature-x' y por qué?'

ComprenderAplicarAnalizarAutoconcienciaHabilidades de Relación
Generar Clase Completa

Plantillas

Plantillas que acompañan estas actividades de Tecnología

Úsalas, edítalas, imprímelas o compártelas.

Algunas notas para enseñar esta unidad

Enseñar Git requiere un enfoque basado en problemas reales, donde los estudiantes enfrenten errores comunes y aprendan a diagnosticarlos. Evite explicar todos los comandos antes de usarlos; en su lugar, introduzca los conceptos justo antes de que sean necesarios en la actividad. La investigación muestra que los estudiantes retienen mejor cuando el error precede a la solución, no al revés. Use analogías tangibles, como comparar las ramas con notas adhesivas en un borrador de documento, para hacer el concepto más accesible.

Al finalizar las actividades, los estudiantes deben configurar repositorios, crear ramas, realizar commits significativos y resolver conflictos de manera autónoma. La evidencia de aprendizaje incluye repositorios funcionales, respuestas claras en ejercicios de simulación y explicaciones coherentes sobre el propósito de cada comando usado.


Cuidado con estas ideas erróneas

  • Durante el Taller Inicial, observe si los estudiantes creen que Git solo guarda copias completas de archivos en diferentes momentos.

    Durante el Taller Inicial, pida a los estudiantes que revisen el historial con git log --oneline y señalen diferencias específicas entre commits, destacando que Git rastrea cambios línea por línea y no versiones completas duplicadas.

  • Durante la Práctica Colaborativa, escuche si los estudiantes mencionan que las ramas duplican todo el proyecto y consumen mucho espacio.

    Durante la Práctica Colaborativa, muestre el comando git branch -v para demostrar que las ramas son apuntadores ligeros al mismo historial y compare el tamaño del repositorio antes y después de crear múltiples ramas.

  • Durante la Simulación de Resolución de Conflictos, identifique si los estudiantes asumen que merge siempre sobrescribe el código del otro desarrollador.

    Durante la Simulación de Resolución de Conflictos, entregue un archivo con conflictos reales y pida a los estudiantes que usen git diff para analizar las diferencias antes de resolverlas manualmente, destacando que el merge integra cambios sin sobrescribir automáticamente.


Metodologías usadas en este resumen