Comment installer un dépôt SVN sur un serveur linux mutualisé de 1and1Il est possible d'installer un svn sur un hébergement linux mutualisé fourni par 1and1. Pour cela, il vous faut un accès SSH sur votre serveur. Mais cela est limité. En effet, seul vous pourrez y accéder par SSH puisque l'on l'on a un seul accès SSH sur ce type de serveur. Mais associé à un système de type Trac, on arrive à un système utilisable. Ne vous lancez pas dans ces manipulations si vous ne savez pas ce que vous faites, vous pouvez bloquer votre accès SSH assez facilement.
Ce site est le site sur lequel j'ai trouvé les instructions nécessaires pour le faire. Déjà, il faut se connecter au serveur en SSH. On peut le faire via PUTTY. Puis, on créé un répertoire temporaire pour télécharger et décompresser tous les fichiers avec les commandes suivantes : mkdir tmp cd tmp wget http://subversion.tigris.org/downloads/subversion-1.6.3.tar.gz wget http://subversion.tigris.org/downloads/subversion-deps-1.6.3.tar.gz tar -xzvf subversion-1.6.3.tar.gz tar -xzvf subversion-deps-1.6.3.tar.gz cd subversion-1.6.3 mkdir ~/opt Il faut ensuite configurer svn pour s'installer dans le dossier opt de vore hébergement. Il faut remplacer les x par ce qui convient pour votre site. On l'obtient par la commande pwd. ./configure --prefix=/xxxxxx/homepages/xx/xxxxxxxxx/htdocs/opt/svn make make install Ensuite, pour utiliser votre svn, il faut encore l'ajouter dans votre path : echo 'export PATH=~/opt/svn/bin:$PATH' >> ~/.bash_profile Il suffit de se déconnecter et se reconnecter pour vérifier le bon fonctionnement en vérifiant la version. Si la version est inférieur à celle que vous avez installer, c'est que l'on pointe toujours sur le svn installé de base sur le serveur. svn --version
On supprime les fichiers temporaires : rm ~/tmp/subversion* -r Puis, on créé le dossier de dépôt : svnadmin create ~/opt/svn/repos Au final, les limitations sont nombreuses et l'installation d'un trac est aussi possible. C'est une tâche longue et fastidieuse. Vous pouvez prendre un serveur dédié pour lever toutes les limitations ou héberger votre svn ailleurs. Vous trouverez facilement une liste d'hébergeur pour les projets open source. Pour les autres projets, vous avez ceux de la liste ci-dessous : http://www.prosvn.org/page_products.php http://www.xp-dev.com/ http://github.com/ 1and1 | Putty | SSH | svn | trac
|
Commentaires
Merci beaucoup pour ce billet, c'est exactement ce que je cherchais. J'ai suivi avec intérêt toute ta démarche, et j'ai aussi réussi à installer svn sur mon serveur mutualisé de 1&1. Cela dit, j'aimerai pouvoir accéder à ce dépôt sur mon ordi à l'aide de TortoiseSVN, et la ça coince, lorsque j'essaie de Checkout mon repository http://monsite.com/opt/svn/monrepository il me répond : Repository moved permanently to 'http://la-bnbox.fr/opt/svn/Flambclair-v2/';
En lisant l'article dont tu t'es inspiré, j'ai vu qu'il parlait de SVN+SSH, je n'ai pas tout compris ce passage là, mais j'en déduis que j'ai du zappé quelque chose. Y a-t-il quelque chose de particulier à faire pour accèder au repository à partir de TortoiseSVN ? (lui donner les accès de mon compte 1&1 par exemple ?
Merci d'avance !
Comme quoi parfois il faut chercher par soit-même. J'ai avancé dans la résolution de mon problème. Pour me connecter à mon repository, j'utilise désormais l'url suivante dans TortoiseSVN : svn+ssh://login@hostkunden/.../svn/repos, TortoiseSVN me demande alors de rentrer mon mot de passe, ce que je fais. Puis il me le redemande, je m'exécute encore, et finalement, il m'affiche l'erreur suivante : Expected FS format '2'; found format '4'
J'avoue que je reste assez pantois... Ya-t-il encore quelque chose que j'aurai oublié ?
Merci d'avance !
On peut ensuite utiliser une interface web pour y accéder, mais si on ne peut pas le faire avec un svn à plusieurs utilisateurs, cela ne sert à rien. Il vaut mieux mettre le svn sur un autre serveur (ton pc de développement, un serveur, un serveur mutualisé, sur sourceforge, sur google code, ...)
Fait attention à ce que tu fais en ssh, tu peux planter très facilement ton site.
J'ai pu utiliser svn mais je l'ai abandonné à cause de cette limitation. Si ton svn ne fonctionne pas, c'est qu'il y a une commande que tu as mal appliquée.
Je ne peux pas te dépanner d'un coup, cela fait plusieurs mois que je l'ai fait et je ne me souvient plus des détails.
Ma méthode peut aussi ne plus fonctionner en fonction des mises à jour des serveurs et des changements qu'ils ont peut-être fait concernant la sécurité.
Cela n'a pas fonctionné du 1er coup, j'ai fait de nombreux essais avant d'y arriver.
En tout cas, je me suis débrouillé autrement.
Merci encore.
Pour ton problème, BN, la version du svn installé sur le serveur est trop antérieure à celle que tu utilises (1.6.3 dans cet exemple). Il suffit d'utiliser l'option --pre-1.5-compatible dans la commande svnadmin create :
svnadmin create --pre-1.5-compatible ~/opt/svn/repos
Peut-être que l'installation de SVN à légèrement changer depuis cet article.
La configuration des serveurs de 1and1 à surement changer car ils font des mises de leur système de temps en temps.
=> "Expected FS format '2'; found format '4'"
Ce que je comprend pas c'est si pour faire mon checkout ou mon importe je dois utiliser l'url
svn+ssh://MONIDENTIFIANT@MONSERVER/XXXXX/homepages/XX/XXXXXXX/htdocs/opt/svn/repos
ou alors simplement
svn+ssh://MONIDENTIFIANT@MONSERVER/opt/svn/repos
car la première me donne l'erreur que je viens de citer et la deuxième 'No repository found in..."