Antes de empezar, debemos entender algunos términos básicos:
main
es la
versión “oficial” y estable de tu proyecto. Cuando quieres añadir algo
nuevo o corregir un error, creas una nueva rama, que es
una copia personal y paralela del proyecto. En esta nueva rama puedes
hacer todos los cambios que quieras sin afectar la versión oficial.main
”.Este es el momento de abrir VS Code, Google Colab o tu herramienta preferida y hacer tu magia. Modifica los archivos, crea nuevos, etc.
!git clone ...
. Trabaja en
tu notebook y, cuando termines, guarda tus cambios y usa los comandos de
Git (!git add ...
, !git commit ...
)
directamente en las celdas del cuaderno para registrar tu trabajo.Cada estudiante debe clonar el repositorio central en su computador:
git clone https://github.com/usuario/repositorio.git
cd repositorio
Cada colaborador trabaja en una rama distinta para no afectar el
código principal (main
o master
):
git checkout -b nombre_rama
Ejemplo:
git checkout -b juan-feature1
Editar archivos, agregar nuevos o eliminar lo que sea necesario. Luego, guardar los cambios en Git:
git add .
git commit -m "Descripción clara de los cambios"
Enviar la rama al repositorio remoto:
git push origin nombre_rama
main
).Antes de seguir trabajando, actualizar la rama local:
git checkout main
git pull origin main
git checkout nombre_rama
git merge main
Si dos personas modifican la misma línea de un archivo, aparecerán conflictos.
git add archivo_conflictivo
git commit -m "Conflictos resueltos"
nombre-alumno-tareaX
.main
.En un entorno colaborativo de Google Colab con GitHub, la creación de ramas puede ser realizada tanto por el líder (Estudiante 1) como por los demás estudiantes colaboradores. Aquí te explico cómo funciona:
Ambos pueden crear ramas, pero con diferentes niveles de acceso:
El líder les da acceso como colaboradores en GitHub:
Los estudiantes clonan el repositorio:
git clone https://github.com/usuario/repositorio.git
Crean su rama:
git checkout -b nombre-rama-estudiante
Cada estudiante hace fork del repositorio
Clonan su fork:
git clone https://github.com/estudiante/repositorio-forkeado.git
Crean su rama en su fork personal
Hacen pull requests al repositorio original
# Para cada estudiante colaborador:
git clone [URL del repositorio]
git checkout -b feature/estudiante2-tarea-especifica
# Trabajar en Google Colab...
# Guardar cambios
git add .
git commit -m "Descripción de los cambios"
git push origin feature/estudiante2-tarea-especifica
feature/nombre-estudiante-descripcion
main
main
main
!
en
ColabEn Google Colab, puedes usar el símbolo de exclamación !
para ejecutar comandos de terminal directamente en las celdas de código.
Esto es extremadamente útil para gestionar repositorios de GitHub,
instalar paquetes, y mucho más.
!
en Colab# Listar archivos en el directorio actual
!ls
# Ver el directorio actual
!pwd
# Instalar un paquete con pip
!pip install numpy pandas
# Clonar un repositorio de GitHub
!git clone https://github.com/usuario/repositorio.git
!
# Configurar usuario de Git
!git config --global user.name "Tu Nombre"
!git config --global user.email "tu.email@ejemplo.com"
# Clonar el repositorio (solo la primera vez)
!git clone https://github.com/lider/repositorio.git
# Navegar al directorio
%cd repositorio
# Ver ramas disponibles
!git branch -a
# Crear una nueva rama y cambiarse a ella
!git checkout -b mi-rama
# O alternativamente: crear y luego cambiarse
!git branch mi-rama
!git checkout mi-rama
# Ver en qué rama estás actualmente
!git branch
# Ver estado de los cambios
!git status
# Agregar archivos específicos
!git add mi_archivo.ipynb
# Agregar todos los cambios
!git add .
# Hacer commit
!git commit -m "Agregué análisis de datos inicial"
# Subir cambios al repositorio remoto
!git push origin mi-rama
# Cambiarse a main
!git checkout main
# Traer los últimos cambios
!git pull origin main
# Volver a tu rama
!git checkout mi-rama
# Fusionar main en tu rama
!git merge main
# Celda 1: Configuración inicial
!git clone https://github.com/lider/proyecto-colab.git
%cd proyecto-colab
!git checkout -b analisis-datos-estudiante2
# Celda 2: Trabajar en el notebook
# [Aquí tu código de análisis...]
# Celda 3: Guardar y subir cambios
!git add .
!git commit -m "Análisis exploratorio completado"
!git push origin analisis-datos-estudiante2
# Guardar el resultado en una variable
resultado = !ls
print(resultado)
nombre_rama = "feature-nueva"
!git checkout -b {nombre_rama}
# Usar && para encadenar comandos
!git add . && git commit -m "Cambios" && git push
!git log --oneline --graph --all
# Para evitar pedir usuario/contraseña cada vez
# Configurar token de acceso personal
!git remote set-url origin https://token@github.com/usuario/repositorio.git
# Ver configuración de Git
!git config --list
# Forzar push si hay conflictos
!git push -f origin mi-rama
# Descargar cambios remotos
!git fetch --all