Skip to Main Menu

Git con R. Control de versiones

Suele ser muy útil cuando trabajamos en un desarrollo que requiere permanente actualización del código o un trabajo colaborativo, utilizar un programa de control de versiones. En este caso, mostraré como el software git y la plataforma web gitlab permitirán conectarse con un proyecto de R de manera de permitir el control de versiones del proyecto.

¿Por qué usar un software de control de versiones?

  • Permite compartir tus proyectos, facilitando el trabajo colaborativo
  • Regresar a versiones previas, si encontrás errores o borrás accidentalmente algo.
  • Ver los cambios entre diferentes versiones de tu código, análisis o texto.
  • Permite reportar errores (bugs) o sugerir nuevos aportes (features) a proyectos.
  • Compartir tus paquetes de R e instalar los que se encuentran en desarrollo con solo dos lineas de código: install.packages("devtools"); devtools::install_github("username/packagename")
  • Saber cuál es la versión final de un archivo!

Tomado de swcarpentry

Software de control de versiones

  • No es un repositorio para tus archivos
  • Está pensado para archivos de texto plano
  • Existen varios webservice amigables que permiten guardar proyectos en repositorios remotamente: gitlab, gitHub o bitbucket.
  • Para utilizarlo es necesario: instalar git en tu sistema operativo, crear una cuenta en gitlab y configurar RStudio.
  • Recomiendo este el libro online Happy with R

Esquema de funcionamiento

Tomado de Git-it

Instalar git en Ubuntu y configurarlo

En la terminal escribir el siguiente código. Las líneas de configuración es necesario modificar “Your Name” por el nombre que usas o usarás en la cuenta de gitlab o github y “youremail@domain.com” por el mail que utilizás o usarás en tu cuenta de gitlab o github

sudo apt-get install git
git config --global user.name "Your Name"
git config --global user.email "youremail@domain.com"

Configurar RStudio para conectarlo a git

Crear proyecto en gitlab y asociarlo con RStudio

Repositorio local y virtual: commit y push

En todo este proceso solo usamos software libre y sin gastar dinero.