23 février 2024
git est un gestionaire de sources :
Suivi des modifications : bien plus qu’une sauvegarde !
Possibilité de revenir en arrière ;
Plusieurs versions concurrentes : branches.
GitHub est une plateforme pour la collaboration basée sur Git.
Possibilité de développer à plusieurs : la fin des pièces jointes !
Présentation des résultats : pages GitHub ;
Intégration continue: GitHub Actions.
RStudio doit détecter Git
Sinon, l’installer.
Les fichiers modifiés sont dans la fenêtre Git de RStudio.
Utiliser .gitignore pour masquer les fichiers non suivis.
Après chaque séance de travail, livrer le résultat (Commit)
Sélectionner les fichiers à livrer.
Saisir un message clair : résumé sur la première ligne.
Icône en forme d’horloge dans la fenêtre Git
Ouvrir un compte sur GitHub
Créer un jeton d’accès personnel :
Sauvegarder le jeton ! Il sera demandé à la première tentative de pousser des modifications sur GitHub.
La branche principale s’appelle historiquement master
mais récemment main
par défaut.
Choisir :
La branche s’appelle “master” dans toute cette présentation.
Dans le terminal de RStudio:
git config --global init.defaultBranch master
A partir de rien :
Dans GitHub :
Copier l’URL à partir de Clone or Download
Dans RStudio : nouveau projet à partir de Git, coller l’URL.
A partir d’un projet RStudio existant :
git remote add origin https://github.com/MonCompte/MonDepot.git git branch -M master git push -u origin master
A chaque nouvelle séance de travail :
Pendant la séance de travail, après chaque tâche élementaire :
A la fin de chaque nouvelle séance de travail :
Déclarer un collaborateur.
Travailler à deux ou plus sur le même fichier.
Contenu d’une séance de travail :
L’information élémentaire est la ligne.
Modifications contradictoires = conflit.
Minimiser les conflits : dans un texte, une phrase = une ligne.
En cas de conflit, trancher.
Ajouter un fichier README.md
Prendre en compte, valider et pousser.
Editer la même ligne de README.md :
Tirer, constater le conflit, le résoudre.
Le voisin de gauche invite celui de droite sur GitHub.
Les deux modifient le projet.
Modifier le projet sans perturber son état stable.
Application :
développer une nouvelle fonctionnalité ;
la tester, corriger les bugs ;
la rendre visible quand elle est terminée.
Cliquer sur New Branch
Travailler dans la nouvelle branche (pull, commit, push).
Se placer dans la branche master.
Exécuter:
git merge branche_a_fusionner
Objectif : modifier le dépôt d’un autre
Fourcher: création d’une copie du dépôt
Commencer une nouvelle branche, la modifier.
Demande d’intégration de la branche: Pull Request.
Sur GitHub.
Dialogue possible.
Si acceptation, fusion de la branche et suppression.