TP5-gitlinux/README.md
2025-04-09 16:02:46 +00:00

54 lines
2.3 KiB
Markdown

##TP5 Activité de groupe : Découverte de Git sous Linux
# Objectif de l'activite
Cette activite a pour but de decouvrir les commandes de base de Git sous Linux, dans un contexte
collaboratif. Les etudiants travailleront par groupes pour developper un mini-projet en C, tout en utilisant les
fonctionnalites principales de Git : clone d'un depot distant, commits, branches, fusions, resolution de conflits
et push vers Gitea.
Etape 1 - Recuperation du projet depuis Gitea
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
cd projet-git
nano main.c
git add main.c
git commit -m "Initial commit avec fichier main.c"
git push origin main
'''
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 effectue un commit sur sa branche et pousse la branche sur le serveur Gitea.
git checkout -b feature-nom
# Modifier main.c pour ajouter une fonction ou un commentaire
git add main.c
git commit -m "Ajout de la fonction X"
git push origin feature-nom
Etape 3 - Fusion des branches
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.
Activité de groupe : Découverte de Git sous Linux
git checkout main
git pull origin main
git merge feature-nom
# En cas de conflit :
git status
git diff
# Resoudre manuellement les conflits, puis :
git add main.c
git commit -m "Resolution de conflit"
git push origin main
Etape 4 - Consultation de l'historique
Les etudiants consultent l'historique des commits et visualisent la structure du projet.
git log --oneline --graph --all
Fichier C de depart (main.c)
#include <stdio.h>
int main() {
printf("Bonjour, Git !\n");
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.