Outils de collaboration
\( \text{Collaboration} = \{\text{Versioning}, \text{Synchronisation}, \text{Communication}\} \)
Éléments clés
Exemple Git :
git clone https://github.com/user/repo.gitgit add fichier.pygit commit -m "Amélioration de la fonction"git push origin main
Plateformes disponibles
Hébergement de code :
- GitHub - Populaire, éducatif
- GitLab - Fonctionnalités complètes
- Bitbucket - Intégration Atlassian
- Github Classroom - Pour les projets scolaires
Outils de collaboration :
- Issues - Suivi des bugs et tâches
- Pull Requests - Proposer des modifications
- Discussions - Communication d'équipe
- Wiki - Documentation collaborative
Bénéfices du partage
Historique complet
Travail d'équipe
Sauvegarde sécurisée
Versioning avancé
Bonnes pratiques
Commandes Git essentielles :
# Initialiser un dépôt
git init
# Cloner un dépôt existant
git clone [url]
# Voir l'état des fichiers
git status
# Ajouter des fichiers au suivi
git add [fichier]
# Sauvegarder les modifications
git commit -m "Message clair"
# Envoyer les modifications
git push origin [branche]
# Récupérer les modifications
git pull origin [branche]
Normes de nommage
Messages de commit clairs
Noms de branches explicites
Structure de dossiers organisée
Fichier README complet
Règles de collaboration
Commits :
Messages en français, verbe à l'impératif
Branches :
Une branche par fonctionnalité
Pull requests :
Demander une revue avant fusion
Exemple de workflow collaboratif
Structure de projet
mon_projet/
├── README.md
├── requirements.txt
├── src/
│ ├── __init__.py
│ ├── algorithmes/
│ │ ├── tri.py
│ │ └── recherche.py
│ └── tests/
│ ├── test_tri.py
│ └── test_recherche.py
└── docs/
└── guide_utilisation.md
README.md - Exemple
# Projet NSI - Système de tri
Ce projet implémente plusieurs algorithmes de tri.
## Installation
`pip install -r requirements.txt`
## Utilisation
`python -m src.algorithmes.tri`
## Algorithmes implémentés
- Tri à bulle
- Tri fusion
- Tri rapide
## Auteurs
- Alice Martin
- Bob Dupont
Workflow Git
# 1. Récupérer le projet
git clone https://github.com/user/projet-nsi.git
cd projet-nsi
# 2. Créer une branche pour votre travail
git checkout -b fonctionnalite-nouvelle
# 3. Faire vos modifications
# (éditer les fichiers)
# 4. Sauvegarder vos modifications
git add .
git commit -m "Ajout de la nouvelle fonctionnalité"
# 5. Envoyer vos modifications
git push origin fonctionnalite-nouvelle
# 6. Créer une Pull Request sur GitHub
Conseils pour collaborer
Synchroniser régulièrement
Documenter les changements
Relire le code des autres
Communiquer clairement
Protéger la branche principale