Actualiser README.md

This commit is contained in:
bastien 2025-04-09 16:21:39 +00:00
parent 0ad3a9db62
commit 8402c034b7

View File

@ -6,35 +6,49 @@ collaboratif. Les etudiants travailleront par groupes pour developper un mini-pr
fonctionnalites principales de Git : clone d'un depot distant, commits, branches, fusions, resolution de conflits fonctionnalites principales de Git : clone d'un depot distant, commits, branches, fusions, resolution de conflits
et push vers Gitea. et push vers Gitea.
Etape 1 - Recuperation du projet depuis Gitea Etape 1 - Création et Recuperation du projet depuis Gitea
***
Attention tout ce qui est entre *truc* dans être modifier pour corespondre au nommage de vos fichiers et projets
***
Créer en compte pour chaque membre de groupe sur https://gitea.apf-bi.ovh (avec votre addresse unilim)
Créer un depot publique sur le gitea avec l'un des comptes juste créer (le nommer en accord avec votre groupe de TP: MIX-1-toto-tata)
Chaque groupe commence par cloner un depot depuis le gitea sur sa machine virtuelle linux (la lancer avec l'icone xubuntu du bureau. identifiant eleve mdp eleve).
Chaque groupe commence par cloner un depot vide ou prepare sur le serveur Gitea. Ils se placent ensuite
dans le dossier du projet, ajoutent un fichier source en C, et realisent un premier commit suivi d'un push vers
Gitea.
``` ```
git clone http://<adresse-gitea>/<utilisateur>/projet-git.git git clone http://gitea.apf-bi.ovh/*<utilisateur>*/*projet-git.git*
cd projet-git ```
Ensuite placez vous dans le dossier du projet, ajoutez un fichier source en C (un membre du binome le fait pour iniitalisé votre dépot), et realisent un premier commit suivi d'un push vers Gitea:
```
cd *projet-git*
nano main.c nano main.c
git add main.c git add main.c
git commit -m "Initial commit avec fichier main.c" git commit -m "Initial commit avec fichier main.c"
git push origin main git push origin main
``` ```
Etape 2 - Travail en branches Etape 2 - Travail en branches
Chaque membre du groupe cree sa propre branche pour ajouter une fonction au programme C. A la fin, Chaque membre du groupe cree sa propre branche pour ajouter une fonction au programme C. A la fin,
chaque membre effectue un commit sur sa branche et pousse la branche sur le serveur Gitea. chaque membre effectue un commit sur sa branche et pousse la branche sur le serveur Gitea.
```` ```
git checkout -b feature-nom git checkout -b feature-nom
```` ```
## Modifier main.c pour ajouter une fonction ou un commentaire ## Modifier main.c pour ajouter une fonction ou un commentaire
```
git add main.c git add main.c
git commit -m "Ajout de la fonction X" git commit -m "Ajout de la fonction X"
git push origin feature-nom git push origin feature-nom
```
Etape 3 - Fusion des branches Etape 3 - Fusion des branches
Les membres du groupe fusionnent leurs branches dans la branche principale en local, puis synchronisent le Les membres du groupe fusionnent leurs branches dans la branche principale en local, puis synchronisent le
depot avec Gitea. Des conflits peuvent survenir et devront etre resolus manuellement. depot avec Gitea. Des conflits peuvent survenir et devront etre resolus manuellement.
Activité de groupe : Découverte de Git sous Linux Activité de groupe : Découverte de Git sous Linux
git checkout main git checkout main
git pull origin main git pull origin main
@ -47,16 +61,20 @@ git diff
git add main.c git add main.c
git commit -m "Resolution de conflit" git commit -m "Resolution de conflit"
git push origin main git push origin main
Etape 4 - Consultation de l'historique Etape 4 - Consultation de l'historique
Les etudiants consultent l'historique des commits et visualisent la structure du projet. Les etudiants consultent l'historique des commits et visualisent la structure du projet.
git log --oneline --graph --all git log --oneline --graph --all
***
Fichier C de depart (main.c) Fichier C de depart (main.c)
```
#include <stdio.h> #include <stdio.h>
int main() { int main() {
printf("Bonjour, Git !\n"); printf("Bonjour, Git !\n");
return 0; return 0;
} }
Conclusion ```
Cette activite permet d'experimenter concretement la gestion de versions avec Git et de comprendre les
avantages du travail en branches. Elle met en evidence la puissance de Git pour la collaboration et la
tracabilite dans les projets de developpement, notamment via l'utilisation d'une forge logicielle comme Gitea.