Flujo de trabajo GitHub.

    1. Configuración Inicial del Proyecto

    Crear o Clonar el Repositorio

    • Si el repositorio no existe:
      • git init
      • git remote add origin https://github.com/user/repo.git
      • git branch -M main git push -u origin main
    • Si ya existe, clónalo:
      • git clone https://github.com/user/repo.git

    Configurar Accesos y Roles

    • En GitHub, ve a Settings > Collaborators para invitar a los colaboradores y asignarles permisos (Lectura, Escritura, Administrador, etc.).

    2. Flujo de Trabajo Básico para Colaboración

    Crear una Nueva Rama para tu Trabajo

    Los colaboradores no trabajan directamente en la rama principal (main o master) para evitar conflictos.

    git checkout -b feature/nueva-funcionalidad

    Ejemplo:

    • María está agregando una nueva funcionalidad. Crea una rama llamada feature/agregar-botón.

    Realizar Cambios y Confirmar

    1. Edita archivos en tu rama.
    2. Usa git add para agregar los cambios.
    3. Confirma los cambios con un mensaje descriptivo:
      • git add archivo.txt
      • git commit -m "Agregar botón en la página de inicio"

    Subir Cambios al Repositorio Remoto

    Para compartir tu trabajo:

    git push origin feature/nueva-funcionalidad

    Ejemplo:

    • María sube su trabajo en la rama feature/agregar-botón: git push origin feature/agregar-botón

    3. Revisar y Fusionar Cambios

    Crear un Pull Request (PR)

    1. Ve al repositorio en GitHub.
    2. Selecciona tu rama y haz clic en Compare & Pull Request.
    3. Escribe una descripción detallada de los cambios.
    4. Asigna revisores (por ejemplo, tu líder de proyecto).

    Revisión por Parte del Equipo

    1. Los revisores comentan o aprueban el PR.
    2. Si es necesario, realiza ajustes en tu rama y sube los cambios nuevamente:
      • git add .
      • git commit -m "Ajustar color del botón"
      • git push origin feature/agregar-botón

    Fusionar el Pull Request

    Una vez aprobado:

    1. Haz clic en Merge Pull Request en GitHub.
    2. Borra la rama para mantener el repositorio limpio.

    4. Sincronización y Resolución de Conflictos

    Actualizar tu Rama Local

    Antes de trabajar, asegúrate de tener los últimos cambios del remoto:

    git pull origin main

    Si estás en una rama:

    git checkout feature/nueva-funcionalidad
    git merge main

    Resolver Conflictos

    Si hay conflictos al fusionar:

    1. Git indicará los archivos en conflicto.
    2. Abre los archivos, resuelve los conflictos (busca las marcas <<<<<<, ======, >>>>>>).
    3. Una vez resueltos:
      • git add archivo_conflicto.txt
      • git commit -m "Resolver conflicto en archivo_conflicto.txt"

    5. Flujo Avanzado: Estrategia Fork

    Para proyectos con múltiples colaboradores externos:

    1. Cada colaborador hace un fork del repositorio.
    2. Realiza cambios en su fork y crea un Pull Request hacia el repositorio original.

    Ejemplo:

    • Pedro quiere contribuir a un repositorio público. Hace un fork, crea la rama fix/corregir-typo, realiza los cambios y envía un PR.

    6. Buenas Prácticas

    1. Escribe commits descriptivos: git commit -m "Corregir bug en validación de formulario".
    2. Divide el trabajo: Usa ramas para cada funcionalidad o corrección.
    3. Sincroniza frecuentemente: Usa git pull o git fetch para evitar conflictos mayores.
    4. Revisa el código: Usa herramientas como GitHub Actions o revisores manuales.

    Leave a Reply

    Your email address will not be published. Required fields are marked *