Suite à une question de Charlotte, je me suis lancé dans une explication de ce qu’est subversion.
Q. : > Dis-moi si c’est facile à utiliser
R. : Ce n’est pas vraiment facile, ni vraiment difficile.
C’est un peu comme LaTeX : au début, on se demande se qu’on fait dans cette galère ; mais une fois qu’on y a goûté, on ne sait plus s’en passer !
C’est un outil pour gérer du code !
Il s’agit de gérer des versions de documents et plusieurs personnes peuvent travailler sur les mêmes fichiers. C’est un outil pour gérer du code, pas un gestionnaire de fichiers !
Ainsi en LaTeX, je ne "versionne" que les fichiers sources (.tex ou les images .eps ...) PAS les dvi, toc, aux, ps, pdf...
On commence par "lancer" un projet : Mon beau livre de math
On y ajoute une première version de fichiers.
Ensuite, l’auteur 1 va chercher sur le serveur les fichiers "géométrie(1,2,3...)".tex
[1]
(au hasard !) et commence à les modifier. (ajouter des choses, corriger des fautes de frappes, ajouter d’autres fichiers.)
- L’auteur 2, elle, va chercher sur le serveur les fichiers "analyse(1,2,3...)".tex et commence à les modifier. (ajouter des choses, ...)
Quand ils sont contents, ils vont "déposer"
[2]
leur travail sur le serveur qui enregistre les modifications par rapport aux versions précédentes : modifications, ajouts, retraits, nouveaux fichiers...
Avant de se remettre au boulot, l’auteur 1 désire se synchroniser avec le boulot de l’auteur 2 et aller chercher les nouveautés sur le serveur. [3]
L’auteur 2 fait de même.
Parfois ils ont travaillé tous deux sur le même fichier et le programme les prévient qu’il y a un problème : dans le vocabulaire du versionnement, un "conflit". Voir cet excellent article sur le site du loria : Que faire en cas de conflits pointés par subversion
Moi, j’utilise cette logique là pour synchroniser mon laptop et mon desktop. Je ne dois pas me souvenir de quels fichiers ont été modifiés sur quelle machine. Je fais "comme si" j’étais mon auteur 1 sur le laptop et l’auteur 2 sur l’autre machine.
Subversion se charge de "mettre" les fichiers modifiés sur mon laptop sur le serveur et d’aller chercher sur ce même serveur les fichiers modifiés uniquement sur le laptop.
RCS, CVS, arch, git ...
Subversion est un des plus modernes et des plus complets. Tous enregistrent non pas les fichiers mais les différences par rapport aux fichiers précédents et permettent éventuellemnt de reculer de 3 ou 5 ou 15 "pas" en arrière.
Avant j’utilisais CVS mais Subversion permet une chose que CVS ne sait pas faire : effacer, déplacer et renommer des fichiers et des dossiers. C’est beaucoup plus efficace : on a le droit à l’erreur.
2004-2024 © @YvesDelhaye.Be : "Nous ne sommes pas faits pour vivre comme des imbéciles, mais pour suivre les chemins de la vertu et de la connaissance." (Dante : l’Enfer) - Tous droits réservés
Ce site est géré sous SPIP 2.1.28 [22259] et utilise le squelette EVA-Web 4.1
Dernière mise à jour : mercredi 1er février 2023