Tout le monde n’a pas forcément les moyens, ou l’utilité de déployer un Team Foundation Server pour développer un projet sur Visual Studio. Sachant que Microsoft ne propose que cet outil de collaboration pour développer autour de Visual Studio, j’ai récemment découvert un autre outil de versioning appelé VisualSVN.
USVN – Un projet étudiant
Je connaissais déjà USVN qui permettait de créer des repository et d’administrer simplement les utilisateurs, les groupes en fonction des différents projets. Ces derniers étaient visibles directement sur Internet par authentification. Bref, un excellent outil gratuit, léger et fonctionnel. L’installation était d’ailleurs très facile à réaliser sur une machine Unix puisqu’il suffisait d’une base de données SQL et de quelques lignes de configuration dans le serveur Web Apache.
Malheureusement, il n’est plus supporté depuis quelques mois et il semble qu’il ne soit pas compatible avec les nouvelles version de PHP. Je me suis donc lancé dans le test d’un nouvel outil appelé VisualSVN.
VisualSVN Server
VisualSVN Server est très facile à installer sur un système tel que Microsoft Windows Server. Comme la plupart des applications orientées Microsoft, l’installation se résume à quelques « clics » sur un bouton « Suivant« . Une fois l’installation terminée, vous aurez accès à la fenêtre principale du logiciel.
Vous verrez que le fonctionnement de cet outil de versioning est très simple. Il vous suffit de créer des comptes utilisateurs, ajouter des groupes, associez les groupes et/ou les utilisateurs à tel ou tel projet puis de récupérer l’adresse URL du dépôt / repository. Au passage, pensez à le copier-coller car nous en aurons besoin dans Visual Studio.
Maintenant si vous en êtes là, vous allez probablement me dire que Visual Studio ne dispose pas versioning de type SVN ?!
VisualSVN sur Visual Studio
Afin de pouvoir utiliser votre dépôt SVN sous Visual Studio, vous pouvez choisir deux outils différents :
- VisualSVN [Client] pour Visual Studio. Evidemment, il existe également un module créé par la même société qui développe VisualSVN Server. Ce dernier s’installe très simplement et vous permettra d’accéder à de nouveaux menus directement dans Visual Studio. Il vous permettra d’utiliser toutes les options classiques de versioning. Cependant, ce petit module dispose de 2 points négatifs, selon moi.
- Il est payant. Il ne s’agit pas d’un « point noir » à proprement parlé. Mais étant étudiant, j’exclu cette solution payante : 49 $ / utilisateur tout de même !
- Ce module SVN fait appel à Tortoise SVN pour fonctionner. Il vous faudra donc installer ce logiciel pour pouvoir faire fonctionner correctement VisualSVN sur votre Visual Studio…
- AnkhSVN – http://ankhsvn.open.collab.net/. Cet outil possède l’énorme avantage d’être gratuit et tout aussi fonctionnel que VisualSVN. Je vous conseille donc d’utiliser VisualSVN Server (Free edition) sur votre Serveur et AnkhSVN sur votre Visual Studio. De cette manière, votre solution de versioning sera gratuite.
Dans les deux cas, vous aurez toutes les options de base d’un SVN classique et notamment les outils de merge, les historiques de versioning, exploration du dépôt en ligne…
Pour aller plus loin
Concernant, la version payante de VisualSVN Server, les seules différences se trouvent dans :
- L’authentification Windows (plutôt que de devoir faire d’autres comptes login/mdp)
- Des logs très détaillés
- Une administration à distance
Des options intéressantes mais pas forcément nécessaires dans le cadre d’un projet scolaire ou d’un projet ponctuel qui ne s’ancrerait pas dans une grande entreprise.