Outils graphiques pour Git

Introduction à l’intégration de Git via RStudio

Benjamin Cuer

2024-11-25

Git avec RStudio

Pré-requis : pour pouvoir utiliser correctement Git avec l’IDE RStudio, il convient de travailler avec un Projet R (.Rproj)

Mise en place d’un suivi git avec RStudio (local)

Création d’un projet R versionné avec Git : Dans RStudio : FileNew Project, puis suivre les étapes suivantes :

Un projet R .Rproj est ainsi créé et une nouvelle fenêtre s’ouvre dans une nouvelle session.

Aperçu d’un projet R versionné avec Git

  • Nouvelles options : De nouvelles options apparaissent dans l’IDE de RStudio.
  • Versionnage : Le fichier .git permet de savoir que le projet R est versionné avec Git.
  • Affichage des fichiers cachés : MoreShow Hidden File.
  • Git : possibilité d’utiliser les commandes Git depuis le terminal de la session.

Principales commandes de l’onglet Git dans RStudio

  • Diff : comparer 2 versions d’un fichier ;
  • Commit : valider les modifications d’un ou plusieurs fichier(s) ;
  • Pull : récupérer sur le dépôt distant les modifications apportées au projet par d’autres contributeurs ;
  • Push : partager sur le dépôt distant les modifications que vous avez apportées au projet ;
  • History : consulter l’historique des modifications du projet ;
  • More : ajouter des fichiers à ignorer ou revenir en arrière ou utiliser le terminal ;
  • New Branch : créer une nouvelle branche dans le dépôt Git ;

Etats des fichiers avec RStudio

L’onglet de RStudio permet d’avoir des repères visuels sur les changements apportés à chacun de vos fichiers :

  • Deleted : le fichier a été supprimé du working directory
  • Modified : le contenu du fichier a été modifié
  • Untracked : le fichier a été ajouté au working directory et Git ne l’a jamais vu auparavant

équivalents en ligne de commande : git status

équivalents en ligne de commande :

  • un seul fichier : git add <file-name>
  • tous les fichiers : git add .

Onglet Commit

équivalent en ligne de commande : git commit

Onglet Push

équivalent en ligne de commande : git push

Actualisation des fichiers sur la Forge IRD

Onglet Git ignore

Il existe des exemples / modèles pour le gitignore à adapter en fonction de son besoin https://github.com/github/gitignore/blob/main/R.gitignore

Onglet Diff

L’interface de RStudio permet de rapidement et facilement visualiser les changements apportés sur le code.

équivalent en ligne de commande : git diff ou git diff --staged pour les fichiers déjà ajoutés

  • Le code supprimé s’affiche en rouge
  • Le code ajouté s’affiche en vert

Onglet Historique des modifications

équivalent en ligne de commande : git log

Onglet Branche

  • Limitations : RStudio ne permet pas toutes les opérations sur les branches, notamment la fusion.
  • Solution : Pour les opérations avancées, utilisez les interfaces des forges comme GitLab ou GitHub.

Onglet Revert

équivalent en ligne de commande : git restore <file-name> ou git restore --staged <file-name> pour des fichiers déjà ajoutés

  • Bouton Revert : dans RStudio, il permet d’annuler les dernières modifications d’un fichier pour revenir à son état du dernier commit.
  • Versions antérieures : pour un état plus ancien, RStudio ne permet pas de le faire. Pour cela, utiliser des commandes Git dans le terminal (git checkout).

Conclusion

Récapitulatif et recommendations

Recommandations générales sur l’usage de Git

  • Utiliser Git pour suivre les modifications des codes d’un projet RStudio ;
  • Ne jamais utiliser Git pour sauvegarder les données ;
  • Utiliser l’interface graphique de RStudio pour les usages courants de Git (ligne de commande si besoin ou très à l’aise)

Recommandations sur l’initialisation de Git

  • Utiliser Git dès le lancement de votre projet, même s’il est possible de commencer à suivre un projet déjà existant avec Git.
  • Commencer par créer un dépôt distant sur une forge (Github, Forge IRD, …), puis cloner ce dépôt pour travailler sur votre poste local.
  • Renseigner le fichier .gitignore afin d’exclure certains fichiers du suivi des modifications (notamment les fichiers de données).

Recommandations sur l’usage des branches

  • Utiliser RStudio pour créer une branche ou naviguer entre les branches ;
  • Utiliser les interfaces Github ou Forge IRD pour fusionner deux branches.

Source et informations supplémentaires : https://book.utilitr.org

Connexion SSH entre Forge IRD et RStudio

Cliquez sur View public key et copiez la clé

Connexion Forge IRD / clé SSH

Dépôt remote connecté à un projet R

Créer un projet vide sur la Forge

Dans RStudio, créer un projet vide connecté à la Forge par clé SSH