Download - Problèmes…
![Page 1: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/1.jpg)
Un système de gestion des sources 1
Problèmes…Problèmes…Vous tentez de fusionner des versionstrop divergentes?
Vous avez oublié une partie des sources à la maison?
Vous êtes perdu dans vos multiples versions?
Vous avez oublié de faire un copie de sécurité?
![Page 2: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/2.jpg)
Un système de gestion des sources 2
Un Système de Gestion des Un Système de Gestion des Sources!Sources!
La solution…
![Page 3: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/3.jpg)
Un système de gestion des sources 3
Objectifs d’un SGSObjectifs d’un SGS1. Gérer les problèmes d’accès
concurrents aux sources. 2. Conserver une trace des
modifications.3. Récupérer facilement les sources
des versions précédentes. 4. Assurer l’itinérance du programmeur.5. Faciliter les copies de sauvegarde.
![Page 4: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/4.jpg)
Un système de gestion des sources 4
Structure d’un SGSStructure d’un SGS
C’est un système client-serveur. Toutes les sources et leursversions sont conservées sur le serveur. Le client demande uneversion des sources et le droit d’en modifier une partie.
![Page 5: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/5.jpg)
Un système de gestion des sources 5
Le paradigme Le paradigme Check-out / Edit / Check-inCheck-out / Edit / Check-in Récupérer la dernière version d’un fichier. Réserver le fichier en mode exclusif
(« checkout »). Modification locale du fichier (« Edit »). Sauvegarde des modifications (« check-in »).
+ Sécurité- Flexibilité
![Page 6: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/6.jpg)
Un système de gestion des sources 6
Le paradigme Le paradigme Edit / Merge / CommitEdit / Merge / Commit Modification locale du fichier (« Edit »). Si le fichier a été modifié entre temps :
– Fusion des versions (« Merge »). Sauvegarde des modifications
(« Commit »).
+ Flexibilité - Sécurité
![Page 7: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/7.jpg)
Un système de gestion des sources 7
Microsoft SourceSafeMicrosoft SourceSafe
Utilise le paradigme Check-out / Edit / Check-in.
$$$ ! Peu de support multi-plateformes. Simple d’utilisation.
![Page 8: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/8.jpg)
Un système de gestion des sources 8
SubversionSubversion
Utilise le paradigme Edit / Merge / Commit.
Gratuit. Support multi-plateformes. Utilisation plus complexe ?
![Page 9: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/9.jpg)
Un système de gestion des sources 9
Installation de SubversionInstallation de Subversion Serveurs:
– Site Web: http://subversion.apache.org/ – Version courante: 1.6.12.– Plateformes: Windows, Red Hat, Ubuntu, Fedora,
Debian, FreeBSD, openBSD, Solaris, Mac OS X, etc. Clients:
– SmartSVN (nécessite JRE 1.4.1). Site Web: www.syntevo.com/smartsvn. Version courante: 6.6.2. Plateformes: Windows, Mac OS X, Linux, Unix, OS/2.
– TortoiseSVN.– VisualSVN, Etc.
![Page 10: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/10.jpg)
Un système de gestion des sources 10
Exemple pour la présentation: Exemple pour la présentation: C’est du gâteau!C’est du gâteau!
Inspiré du projet de Louise et Michel
![Page 11: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/11.jpg)
Un système de gestion des sources 11
Effacer les dossiers et fichiers Effacer les dossiers et fichiers temporairestemporaires
Seuls les sources et les ressources doivent être déposés dans un SGS, pas les binaires!
Dossiers Bin, Obj, Debug, Release
Fichiers suo, user, ncb
![Page 12: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/12.jpg)
Un système de gestion des sources 12
Se connecter au dépôtSe connecter au dépôtLouise au travail...Michel à la maison...
![Page 13: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/13.jpg)
Un système de gestion des sources 13
Créer un profilCréer un profil
![Page 14: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/14.jpg)
Un système de gestion des sources 14
Choisir le protocole, le serveur Choisir le protocole, le serveur et le dépôtet le dépôt
Protocole
ServeurDépôt
![Page 15: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/15.jpg)
Un système de gestion des sources 15
Entrer le nom et le mot de Entrer le nom et le mot de passepasse
Nom d’usager SubversionMot de passe
![Page 16: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/16.jpg)
Un système de gestion des sources 16
Entrer le nom du profilEntrer le nom du profil
Description du module
De façon optionnelle, on peut donner un nom local au profil
![Page 17: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/17.jpg)
Un système de gestion des sources 17
Créer un projet à partir de Créer un projet à partir de sources localessources locales
Louise au travail...
![Page 18: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/18.jpg)
Un système de gestion des sources 18
Créer un projetCréer un projet
Chemin d’accès
au dossier
![Page 19: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/19.jpg)
Un système de gestion des sources 19
Choisir le profilChoisir le profil
![Page 20: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/20.jpg)
Un système de gestion des sources 20
Créer un dossier dans le dépôtCréer un dossier dans le dépôt
![Page 21: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/21.jpg)
Un système de gestion des sources 21
Structure recommandée des Structure recommandée des dossiers dans le dépôtdossiers dans le dépôt Projet 1
o Trunk : Version courante• Sources• Documentations
o Branches : Versions divergenteso Tags: Versions relâchées
Projet 2 Outils communs
![Page 22: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/22.jpg)
Un système de gestion des sources 22
Donner un nom au projetDonner un nom au projet
![Page 23: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/23.jpg)
Un système de gestion des sources 23
ConfirmationConfirmation
![Page 24: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/24.jpg)
Un système de gestion des sources 24
Ajouter les fichiers au dépôtAjouter les fichiers au dépôt
![Page 25: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/25.jpg)
Un système de gestion des sources 25
Enregistrer les changements Enregistrer les changements (« commit »)(« commit »)
![Page 26: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/26.jpg)
Un système de gestion des sources 26
Récupérer un projet Récupérer un projet Michel à la maison...
![Page 27: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/27.jpg)
Un système de gestion des sources 27
Récupérer un projet Récupérer un projet (« checkout »)(« checkout »)
Choisir le
profil
![Page 28: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/28.jpg)
Un système de gestion des sources 28
Choisir le dossier du dépôtChoisir le dossier du dépôt
![Page 29: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/29.jpg)
Un système de gestion des sources 29
Choisir le dossier localChoisir le dossier local
![Page 30: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/30.jpg)
Un système de gestion des sources 30
Choisir le nom du projet localChoisir le nom du projet local
![Page 31: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/31.jpg)
Un système de gestion des sources 31
ConfirmationConfirmation
![Page 32: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/32.jpg)
Un système de gestion des sources 32
Enregistrer une modificationEnregistrer une modificationMichel à la maison...
![Page 33: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/33.jpg)
Un système de gestion des sources 33
Modifications de MichelModifications de Michel
Main.cpp:
CestDuGateau.h:
![Page 34: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/34.jpg)
Un système de gestion des sources 34
Modifications de Michel (suite)Modifications de Michel (suite)
État local
« commit »
![Page 35: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/35.jpg)
Un système de gestion des sources 35
Confirmation et messageConfirmation et message
IMPORTANT!
![Page 36: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/36.jpg)
Un système de gestion des sources 36
Récupérer la dernière versionRécupérer la dernière versionLouise au travail...
![Page 37: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/37.jpg)
Un système de gestion des sources 37
Récupérer les modificationsRécupérer les modifications
Dossier
![Page 38: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/38.jpg)
Un système de gestion des sources 38
Résolution de conflitsRésolution de conflits
![Page 39: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/39.jpg)
Un système de gestion des sources 39
Modifications à CestDugateau.hModifications à CestDugateau.h
Louise Michel
![Page 40: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/40.jpg)
Un système de gestion des sources 40
Résultat: Conflit !!!Résultat: Conflit !!!
Michel doit récupérer la dernière version du fichier CestDuGateau.h
![Page 41: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/41.jpg)
Un système de gestion des sources 41
Utiliser l’outil de résolution de Utiliser l’outil de résolution de conflitsconflits Pour chaque conflit, il faut choisir entre le bloc
local (Michel) ou le bloc du dépôt (Louise)
BlocLocal
(Michel)Bloc
courant
BlocDu
Dépôt(Louise)
![Page 42: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/42.jpg)
Un système de gestion des sources 42
Enregistrer les modificationsEnregistrer les modifications
![Page 43: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/43.jpg)
Un système de gestion des sources 43
Des outils pratiquesDes outils pratiques
![Page 44: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/44.jpg)
Un système de gestion des sources 44
Le journalLe journal
– la date et l’heure de la modification, – l’auteur de la modification, – le message associé, – le contenu du fichier, etc.
Pour chaque révision, on peut visualiser:
![Page 45: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/45.jpg)
Un système de gestion des sources 45
La vue annotéeLa vue annotéePour chacune des lignes d’un fichier,
on peut visualiser:– la dernière révision qui a modifié cette
ligne,– l’auteur de la modification,– la date et l’heure de la modification.
![Page 46: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/46.jpg)
Un système de gestion des sources 46
Les différencesLes différences
On peut visualiser les différences entre deux révisions ou entre la version locale et la version du dépôt
![Page 47: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/47.jpg)
Un système de gestion des sources 47
La fenêtre des transactionsLa fenêtre des transactionsChacune des modifications apportées au dépôt sont
affichées dans la fenêtre des transactions.
Vues
![Page 48: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/48.jpg)
Un système de gestion des sources 48
À ne pas oublier...À ne pas oublier...
Le SGS est indispensable à tout projet sérieux mais n’est pas la solution miracle à tous les problèmes!
Vérifier que le projet compile et fonctionne avant d’enregistrer les modifications.
Récupérer souvent les dernières modifications. Faire de petites modifications à la fois! Bien diviser le travail entre programmeurs pour
éviter les conflits.
![Page 49: Problèmes…](https://reader036.vdocuments.fr/reader036/viewer/2022062518/5681423f550346895dae615b/html5/thumbnails/49.jpg)
Un système de gestion des sources 49
Informations utilesInformations utiles Nom du serveur: hercule.clg.qc.ca Noms des dépôts:
Noms d’usagers:
– Votre prénom en minuscule, pas de trait d’union ou d’espace, maximum 8 lettres.
Mot de passe : – Votre numéro d’admission, contactez-moi si vous voulez le modifier!
baseballblocchip3dckm3dguitarehuskies
ilsameligrillenaomieomegascolaideshambc
shambv