Trabajo Colaborativo

Luis

Pull Request

request for the maintainer to pull your changes into their repo

Desarrollando en comunidad (GitHub)

Necesitamos

  • Nuestra propia copia del repositorio (en la nube)
  • Copia local del repositorio (nuestra máquina)
  • Poder seguir los cambios en el repositorio (ajeno) de interés

Happy git with R - Fork and clone

How to Sync Forked Repositories Using Git or Github
Soham Biswas

GitHub en el navegador

Podemos crear nuestras propias copias (forks) de un repositorio, editar en la web, y crear PRs con nuestros cambios.

Demo: Luis a corregir ortografía en esta diapositiva

git cli

git cheat sheet - Julia Evans

usethis

Funciones de R para facilitar tareas de desarrollo/git

usethis::create_from_github("usuario/repositorio")

Hace ‘fork’, ‘clone’, y configura la comunicación entre el repositorio remoto y el nuestro

usethis::pr_init("mi_cambio")

Crea una rama para trabajar

usethis::pr_push()
usethis::pr_finish()

Genera el PR en GitHub y nos ayuda a finalizarlo

ramas

Mastering Git Branches - Pankaj Kholiya
  • Espacios de trabajo aislados para trabajar/experimentar sin afectar (romper) el proyecto principal.
  • Versiones paralelas del proyecto, c/u con su propio historial de cambios
  • Se pueden descartar o fusionar con el proyecto principal

git push

Enviar los cambios locales a nuestro fork en GitHub

  • En la línea de comandos o con la flecha azul de RStudio

Siempre hacer pull antes para evitar conflictos

issues

“asuntos” sobre el contenido de un repositorio

  • recordatorios para quien esté a cargo
  • errores o bugs
  • sugerencias de funcionalidad

issues - práctica

  • [1]* abre un issue sobre el contenido de codigo-ej/visscript.R
  • [2]* abre un pull request arreglando el problema

PRs - Individual

Abrir un PR en el archivo maevo2025.qmd y agregar una diapositiva con su nombre, el enlace perfil de Git-hub y la imagen de algún animal que les guste (ver el ejemplo de Luis)

  • trabajar con ramas
  • cuando se integre su cambio, correr usethis::pr_finish()

Si terminaron rápido, mandar un PR modificando la apariencia de la presentación

Fin