web-dev-qa-db-fra.com

Comment installer le serveur Subversion

J'aimerais installer un serveur Subversion sur ma machine Ubuntu.
De quels paquets ai-je besoin? Comment créer un référentiel et définir un nouvel utilisateur?

8
Benjamin

Il existe de nombreuses configurations pour svn, voici quelques instructions pour obtenir un référentiel svn de base disponible via http.

  1. Installez les packages requis: apt-get install Subversion Apache2 libapache2-svn
  2. Créer une structure de répertoire: mkdir -p /var/svn/repos/
  3. Créer un référentiel:
    • cd /var/svn/repos/
    • svnadmin create --fs-type fsfs <your-repository>
  4. Créez maintenant votre projet-struckture à importer dans le référentiel:
    • mkdir -p /tmp/myproject/trunk /tmp/myproject/tags /tmp/myproject/branches
  5. Importer le projet dans le référentiel:
    • svn import /tmp/myproject file:///var/svn/repos/<your-repository> -m "initial import"
  6. Rendez-le accessible via http:
    • cd /etc/Apache2/sites-available
    • touch Subversion.conf
    • vim Subversion.conf

Maintenant, éditez le fichier vide avec cette configuration:

NameVirtualHost *:80

<VirtualHost *:80>   
  <Location /svn>
      ErrorDocument 404 default
      DAV svn
      SVNParentPath /var/svn/repos
      SVNListParentPath off
      Require valid-user
      AuthType Basic
      AuthName "Subversion access"
      AuthUserFile /var/svn/.htpasswd
      AuthzSVNAccessFile /var/svn/authz 
  </Location>
</VirtualHost>
  • active le module dav_svn pour Apache: a2enmod dav_svn
  • activer le module authz_svn pour Apache: a2enmod authz_svn
  • activer la configuration VHost: a2ensite Subversion.conf
  • redémarrez maintenant le serveur Web: /etc/init.d/Apache2 restart
  • Créez un htpasswd: htpasswd -c /var/svn/.htpasswd user
  • Créez le fichier de contrôle d'accès pour le référentiel: touch /var/svn/authz
  • éditez le fichier authz vide: vim /var/svn/authz
  • Donner des droits en lecture/écriture à l'utilisateur:

[votre-référentiel: /]

utilisateur = rw

Essayons de récupérer le repo via http: svn checkout http://your-server/svn/your-repository

10
schneehase

Vous aurez besoin du paquet Subversion.

Sudo apt-get update
Sudo apt-get install Subversion

Ce paquet contient le client, des outils pour créer un référentiel Subversion et le serveur.

2
Octavian Damiean

Commencez à lire le manuel . Je suis en train de faire la même chose.

Une fois que vous avez configuré un référentiel avec svnadmin create /path/to/repo, vous pouvez utiliser svnserve --root /path/to/repo pour le rendre disponible à svn://yourhost/. Ouvrez TCP port 3690 si nécessaire.

Il est possible d'utiliser SVN sur HTTP, mais je n'ai pas encore lu cette partie: o

2
Lekensteyn

Subversion

Subversion est un système de contrôle de version open source.

vous pouvez suivre ce guide depuis help.ubuntu.com:

système de contrôle de version

0
hhlp

Pour installer Subversion, ouvrez un terminal et exécutez la commande suivante:

Sudo apt-get install Subversion libapache2-svn

Nous allons créer le référentiel Subversion dans/svn, bien que vous deviez choisir un emplacement disposant d’une bonne quantité d’espace.

Sudo svnadmin create /svn

Changez le propriétaire de ce référentiel en utilisateur Apache.

Sudo chown -R www-data:www-data /svn

Créer un référentiel Subversion de base pour une utilisation ultérieure (pour Production/QA/Test/Indication ../ etc ..)

Sudo mkdir -p /tmp/myproject/trunk /tmp/myproject/tags /tmp/myproject/branches

Importer ces répertoires dans notre référentiel

Sudo svn import /tmp/myproject file:///svn -m "initial import"

Ensuite, nous devrons éditer le fichier de configuration du module webdav de Subversion. Vous pouvez utiliser un éditeur différent si vous le souhaitez.

Sudo gedit /etc/Apache2/mods-enabled/dav_svn.conf

L'élément Location dans le fichier de configuration dicte le répertoire racine où Subversion sera accessible, par exemple: http://www.server.com/svn

<Location /svn>

La ligne DAV doit être décommentée pour activer le module dav

# Uncomment this to enable the repository,
DAV svn

La ligne SVNPath doit être définie au même endroit que vous avez créé le référentiel avec la commande svnadmin.

# Set this to the path to your repository
SVNPath /svn

La section suivante vous permettra d'activer l'authentification. Ceci est juste une authentification de base, ne la considérez donc pas comme extrêmement sécurisée. Le fichier de mots de passe sera situé là où le paramètre AuthUserFile le définit comme… probablement préférable de le laisser à la valeur par défaut.

# Uncomment the following 3 lines to enable Basic Authentication
AuthType Basic
AuthName “Subversion Repository”
AuthUserFile /etc/Apache2/dav_svn.passwd

Pour créer un utilisateur sur le référentiel utilisé, utilisez la commande suivante:

Sudo htpasswd -cm /etc/Apache2/dav_svn.passwd <username>

Notez que vous ne devez utiliser l'option -c que la PREMIÈRE fois que vous créez un utilisateur. Après cela, vous ne voudrez plus utiliser que l'option -m, qui spécifie le cryptage MD5 du mot de passe, mais ne recrée pas le fichier.

Exemple:

Sudo htpasswd -cm /etc/Apache2/dav_svn.passwd geek
New password:
Re-type new password:
Adding password for user geek

Redémarrez Apache en lançant la commande suivante:

Sudo /etc/init.d/Apache2 restart

Merci: http://www.howtogeek.com/howto/ubuntu/install-Subversion-with-web-access-on-ubuntu/

0
Mr. Black

Voici un article de blog de WANdisco sur la façon d’installer Tortoise SVN 1.7 et de modifier votre premier référentiel.

0
Katie Watkinson