Entre autres :

- code centralisé, sauvegardé
- travail collabortif sur le code source
- faire des diffs avec les versions précédentes, pouvoir restaurer
- voir qui a écrit un bout de code, et de quand il date
- voir les impacts d'un patch et d'un développement
- pouvoir fabriquer des versions avec ou sans tel ou tel module
- avoir un changelog des derniers patchs

L'essayer c'est l'adopter.

Exemple concret : un code qui marchait bien durant des mois a soudainement buggé.

3 cause plausibles ;
- soit le xml importé est devenu très mauvais
- soit un bug jamais vu, car on aurait écrit "jnavier" au lieu de "janvier", et ça n'a jamais été vu car on arrive seulement en janvier
- soit une modification récente a été faite sur un fichier, avec un effet de bord.
Grâce çà subversion on peut instantanément vérifier le 3ème cas. On peut voir comment ça fonctionnait avant la modification malheureuse et restaurer.

même pour un projet très mineure utiliser un subversion est pratique. Quitte à installer le service "rapidement" sur son PC en local

Tout ceci étant une utilisation basique de subversion. Sans même parler de déploiement ou de création de branches, c'est très utile.

Exemple WebSvn : historique sur un projet de jeu d'échec php

svn1.jpg

on choisit un patch, on peut voir quels fichiers ont été concernés, ici 1 seul svn2.jpg

clic sur un fichier, on peut voir quels ont été les modifications faites svn3.jpg