Un tutoriel qui pourrait plaire aux développeurs désirant utiliser SVN avec un serveur WAMP sur Windows.
Avant de commencer, il y a plusieurs applications à télécharger.
- WampServer2.0i : WampServer est une plate-forme de développement Web sous Windows. Il vous permet de développer des applications Web dynamiques à l'aide du serveur Apache2, du langage de scripts PHP et d'une base de données MySQL. Il possède également PHPMyAdmin pour gérer plus facilement vos bases de données.
- Subversion 1.6.6 : est un système de gestion de versions. En gros cela permet de stocker un ensemble de fichiers en conservant la chronologie de toutes les modifications qui ont été effectuées dessus. En permettant notamment de retrouver les différentes versions d'un lot de fichiers connexes. Très utile donc pour le développement d'une application PHP ou d'un site web.
- TortoiseSVN 32bits ou 64bits version 1.6.16.21511-svn-1.6.17 est un des logiciels client de SVN les plus populaires. En s'intégrant dans l'explorateur de Windows, il offre aux utilisateurs de Windows une interface graphique permettant de réaliser la plupart des tâches qu'offre SVN en ligne de commande.
Lors de l'installation de ces applications, évitez d'utiliser des espaces dans les répertoires d'installation.
Pour la suite de ce tuto, voici la hiérarchie des répertoires utilisés :
C:\svn : Répertoire d'installation de SVN.
C:\svnrepos : Répertoires des repos SVN.
C:\svnrepos\projet1 : Exemple de repos.
C:\wamp\www\projet1 : Votre application ou site web en cours de développement.
C:\Program Files\TortoiseSVN : Répertoire d'installation de TortoiseSVN.
Une fois tout installé, on va maintenant copier quelques fichiers propres à SVN sur le serveur Apache de Wamp.
C:\svn\bin\mod_dav_svn.so vers C:\wamp\bin\apache\Apache2.2.11\modules
C:\svn\bin\intl3_svn.dll vers C:\wamp\bin\apache\Apache2.2.11\bin
C:\svn\bin\libdb44.dll vers C:\wamp\bin\apache\Apache2.2.11\bin
Copiez les fichiers mod_authz_svn.so et mod_dav_svn.so se trouvant dans le répertoire C:\svn\bin vers C:\wamp\bin\apache\Apache2.2.11\modules
Nous allons maintenant charger les modules copiés sur Apache.
Ouvrez le fichier httpd.conf qui se trouve dans C:\wamp\bin\apache\Apache2.2.11\conf et trouvez les lignes suivantes :
#LoadModule dav_fs_module modules/mod_dav_fs.so
Pour les remplacer par
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
Sauvegardez le fichier et redémarrez votre serveur Wamp (Restart all services). Si tout s'est bien déroulé, l'icône devrait apparaître en vert. Si ça ne fonctionne pas, essayez de fermer complétement Wamp et de le redémarrer.
Créons maintenant le repository. Pour cela créez un répertoire C:\svnrepos et si vous avez plusieurs projets, créez un sous-répertoire par projet C:\svnrepos\projet1
Ouvrez l'invite de commandes, dirigez-vous vers le répertoire bin de Subversion C:\svn\bin puis créez le repository de votre projet.
svnadmin create C:\svnrepos\projet1
Cela créera une liste de fichiers propres à SVN dans le répertoire de votre projet.
Ouvrez à nouveau le fichier httpd.conf et rendez-vous tout à la fin du fichier et ajoutez :
DAV svn
SVNParentPath C:/svnrepos
Sauvegardez le fichier et redémarrez à nouveau votre serveur Wamp.
Maintenant dirigez-vous vers l'adresse http://localhost/svn/projet1
Si vous voyez un répertoire vide pour le projet1 affichant Revision 0, c'est tout bon
Avec l'aide de TortoiseSVN, nous allons créer la branche trunk (branche de développement) de votre projet.
Faites un clique droit sur votre répertoire projet1 dans l'explorateur Windows et cliquez sur
TortoireSVN > Repo-browser.
Faites un clique droit sur la partie droite, cliquez sur Create folder..., entrez le nom trunk puis validez.
Ensuite ajoutez un commentaire.
En rafraîchissant la page http://localhost/svn/projet1 vous devriez remarquez des changements.
Voilà pour vous, si vous souhaitez un tutoriel pour gérer la phase d'authentification au serveur SVN ainsi que l'intégration sur Eclipse de SVN, je peux vous faire ça
Et si vous avez des questions, n'hésitez pas!
MISES A JOUR DE L'ARTICLE |
Est-ce possible de savoir comment réglé le problème de l'accès externe interdit ???
Peux-tu être plus explicite?
Lorsque je tente d'accèder au Svn via internet ou via tortoise il me mette forbiden access sans me demander le login ou autre chose.
Quand tu dis via Internet, c'est via localhost sur le navigateur quand tu tentes d'accéder à ton repos? (comme pour mon exemple avec http://localhost/svn/projet1 ?)
la dérniere ligne pose probleme :
DAV svn
SVNParentPath C:/svnrepos
une fois inséré dans httpd.conf -> redémarrage de WAMP -> serveur OFFLINE
j'enleve cette ligne et je redemarre le WAMP -> serveur ONLINE
Une solution pour ça ?
Merci d'avance .
slt,merci pour ce tuto
mais actuellement je voudrais plutôt savoir comment intégrer sur Eclipse SVN
> aarsalan, il faut en réalité mettre :
< Location /svn >
DAV svn
SVNParentPath C:/svnrepos
< /Location >
en enlevant les espaces après les < et avant les > des "Location" et ça passe
Merci pour le tuto mais, malheureusement chez moi cela ne marche pas.
J'utilise Wamp 2.2, Apache 2.2.22, Subversion 1.7.8
Mais apache refuse tout simplement de charger les modules SNV copié dans son répertoire modules.
Je pense qu'il s'agit d'un conflit car subversion est en win32 (donc ces modules aussi) et pour ma part j'utilise la version 64 de wamp... Du coup il n'arrive pas à charger les modules et l'icone de wamp est toujours orange.
Bref, arrivez a ce niveau là, je fais quoi ? J’arrête avec cela et j'utilise VisualSVN Server à la place ?!
Même problème que Kite les lignes suivantes font plantés Apache :
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
Les lignes ajoutée au fichier config bloque le démarrage du serveur Apache
Quel est la solution pour cela ?
@facilus Je t'invite à jeter un oeil au projet Neard pour remplacer Wamp: https://github.com/crazy-max/neard