Actuellement, 2 familles de gestionnaires de sources sont opposés: les gestionnaires centralisés (tel que subversion) et les décentralisés tels que git (celui écrit et utilisé par Linus Torvald), Bazar, mercurial, .... Dans mon approche, un gestionnaire centralisé était intéressant car il assurait la conservation sur un serveur du travail de toutes les équipes. Reste qu'il est possible d'utiliser le meilleur des 2 mondes en utilisant git et subversion en même temps, ce qui sera étudié ultérieurement, notamment pour éviter de trop retarder les livraisons inachevées ....
Parmi les qualités de subversion, voici les principales qui m'ont conduit à le choisir (au moment où les gestionnaires décentralisés n'étaient pas encore en vogue):
- facilité d'installation et d'administration
- possibilité d'authentification via LDAP
- gestion fine des droits sur les projets
- syntaxe connue pour les utilisateurs de CVS
- livraison atomique des modifications
- gestion économe de l'espace de stockage (seules les différences d'avec la version précédente sont enregistrées)
- gestion des liens symboliques (entre branches, même principe que le point précédent)
- gestion économe du réseau (même principe que les points précédents)
- prise en compte par les IDE majeurs du marché dont Eclipse
- prise en compte par les outils d'intégration continue
- existence d'un outil en ligne de commande et d'outils dans les gestionnaires de fichier Linux et Windows
- existence d'outils de consultation en client léger (comme viewCVS ou WebSVN)
- capacité à transformer des dépôts CVS ou SourceSafe en dépôts Subversion
Le site: http://subversion.apache.org