GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer et configurer Subversion (SVN) sur CentOS 7

Présentation

Subversion (ou SVN) est un système de contrôle de version de logiciel open source utilisé pour maintenir et suivre les modifications apportées au code logiciel. Cet article vous guidera tout au long du processus de configuration d'un serveur SVN sur CentOS 7 accessible depuis votre ordinateur local. Enfin, nous testerons ce serveur en créant un exemple de projet sur un client SVN.

Prérequis

  • Une installation CentOS 7 existante. Si vous avez besoin d'aide pour configurer CentOS 7, consultez notre tutoriel pour la configuration initiale de CentOS 7.
  • Une connaissance de base de la ligne de commande Linux

Installer SVN

La première étape pour faire fonctionner votre serveur consiste à installer SVN. Sur CentOS, cela se fait plus facilement en utilisant le yum directeur chargé d'emballage. Exécutez la commande suivante pour installer SVN :

sudo yum install subversion

Appuyez sur y , lorsque vous y êtes invité, pour confirmer votre installation. Une fois terminé, vous devriez voir "Complete!" dans l'aérogare. Pour vérifier l'installation, exécutez la commande suivante :

svn --version

S'il est correctement installé, vous verrez un court message qui donne les détails de la version et les informations de copyright pour votre installation SVN.
.

Création d'un référentiel

Avant de pouvoir commencer à utiliser SVN, vous devrez décider de la structure dont vous aurez besoin pour vos référentiels. Pour les petites équipes ou pour un usage personnel, un référentiel devrait suffire. Si vous avez besoin de plusieurs référentiels, vous devez répéter cette section pour chaque référentiel dont vous avez besoin. Exécutez la commande suivante pour créer un répertoire de système de fichiers dans /srv/svn pour le référentiel.

sudo mkdir /srv/svn

Ensuite, initialisez le référentiel à l'aide de svnadmin commande :

sudo svnadmin create /srv/svn

Cette commande crée la structure de dossiers nécessaire pour un référentiel SVN et quelques fichiers par défaut.
.

Configuration du serveur

Il existe de nombreuses options pour exécuter le serveur SVN. Pour ce tutoriel, nous utiliserons le svnserve intégré , qui est très facile à démarrer. Cette option conviendra à la plupart des équipes qui n'ont pas besoin d'options avancées.
.

Créer des utilisateurs

cd /srv/svn/conf
sudo nano svnserve.conf

Dans ce fichier, nous allons ajouter deux propriétés. Le premier est password-db qui pointe vers le fichier où seront stockés les utilisateurs. Le deuxième est realm , que vous pouvez considérer comme "l'espace de noms" utilisé par ce référentiel. Ce nom de domaine sera affiché aux utilisateurs lors de l'authentification.

[general]
password-db = passwd
realm = my company

Si vous modifiez le fichier de configuration prégénéré, ces propriétés existent déjà. Vous pouvez supprimer le symbole de commentaire (# ) – et tout espace précédent – et modifiez l'affectation pour qu'elle corresponde au-dessus ou à votre convenance.

.
Dans ce /srv/svn/conf répertoire, vous devriez déjà voir le passwd dossier. Le svnadmin La commande ci-dessus crée ce fichier automatiquement. Ajoutez autant d'utilisateurs que vous le souhaitez en spécifiant le nom d'utilisateur et le mot de passe dans des paires clé-valeur. Par exemple :

[users]
samantha = secretpassword
robert = hunter2

Démarrer le serveur

Pour démarrer le serveur, nous utilisons le svnserve commande.

sudo svnserve -d -r /srv/svn

Le -d switch le démarre en tant que processus d'arrière-plan (démon). Le -r switch pointe le serveur vers l'emplacement du système de fichiers du référentiel que nous avons créé précédemment. (Pour la liste complète des options de configuration, exécutez man svnserve .)

Assurez-vous d'exécuter ce processus en tant qu'utilisateur élevé (racine). Si vous ne le faites pas, les utilisateurs finaux ne pourront valider aucune modification dans le référentiel.

.
Le port par défaut pour svnserve est 3690. Pour vérifier que le serveur SVN est en cours d'exécution, ouvrez un navigateur et accédez à http://myserver:3690 (en remplaçant myserver avec le nom d'hôte ou l'adresse IP de votre serveur). Vous devriez voir un texte similaire à celui ci-dessous.

Exemple de réponse Subversion dans le navigateur

Même si nous pouvons utiliser http:// ici pour nous assurer que le serveur est démarré, nous allons principalement interagir avec le serveur SVN en utilisant le personnalisé svn:// Format d'URL.

.

Création d'un projet de test

Pour nous assurer que tout est correctement configuré, nous allons créer un projet factice. À partir de là, vous devriez travailler à partir d'un client sur lequel SVN est installé. Si vous n'avez pas facilement accès à un autre ordinateur (ou si vous installez SVN sur votre ordinateur pour un usage personnel), vous pouvez bien sûr utiliser le serveur sur lequel vous travaillez déjà.

Commencez par créer un dossier de projet de test.

mkdir ~/Documents/my-first-project

Ensuite, exécutez la commande suivante pour importer ce répertoire dans SVN. (Encore une fois, assurez-vous de remplacer myserver avec le nom d'hôte ou l'IP de votre serveur SVN.)

svn import ~/Documents/my-first-project svn://myserver:3690/my-first-project -m "Initial commit." --username robert --password hunter2

Il y a beaucoup d'indicateurs dans cette seule commande, alors examinons ce que chacun d'eux fait.

  • import crée un nouveau projet dans SVN. Nous spécifions la source puis la destination.
  • -m "Initial commit." est notre message de validation enregistré dans SVN.
  • --username et --password sont les détails d'authentification.

Vous pouvez recevoir un avertissement indiquant que votre mot de passe sera mis en cache non crypté. Si votre ordinateur client est déjà protégé par un mot de passe, cela peut vous convenir. Mais pour une sécurité optimale, vous pouvez entrer "non" à l'invite pour Store password unencrypted , et votre mot de passe ne sera pas mis en cache. Vous pouvez également suivre la suggestion de définir store-plaintext-passwords (dans le fichier de configuration indiqué) sur "non" pour ne plus être invité.

.
Si tout se passe bien, vous devriez voir Committed revision 1 dans le terminal.

Erreurs courantes

Voici quelques erreurs que vous pourriez obtenir si quelque chose n'est pas configuré correctement :

  • Échec de l'authentification ou de l'autorisation :Passez en revue la configuration sous "Création d'utilisateurs". Il est essentiel que ces fichiers de configuration soient au bon endroit et sans fautes de frappe.
  • Impossible de se connecter à un dépôt :Assurez-vous que le serveur est en cours d'exécution et que vous l'avez démarré avec le bon -r chemin.
  • Erreurs d'autorisation de fichier :Assurez-vous que le serveur fonctionne avec des autorisations élevées. Si vous n'êtes pas sûr, le ps aux La commande vous montrera l'utilisateur qui exécute svnserve .

.

Conclusion

Après avoir terminé ce didacticiel, vous devriez être en mesure de :

  • Créer un référentiel SVN de base dans CentOS 7
  • Ajouter des utilisateurs au référentiel
  • Démarrer un serveur via lequel les clients peuvent accéder au référentiel

Il existe de nombreuses options supplémentaires que vous pouvez configurer dans votre installation de SVN. Pour plus d'informations, consultez le livre SVN, qui fournit des détails plus détaillés sur la configuration et la maintenance du serveur SVN.

Atlantic.net propose un hébergement VPS ainsi que des services d'hébergement gérés qui incluent une couche de services gérés essentiels à vos forfaits d'hébergement. Contactez-nous dès aujourd'hui pour plus d'informations.


Linux
  1. Comment installer et configurer VNC sur CentOS 7

  2. Comment installer et configurer Gitlab sur CentOS 8

  3. Comment installer et configurer Postgres 13 sur Centos 8

  4. CentOS / RHEL 4 :Comment installer et configurer le serveur FTP (vsftpd)

  5. CentOS / RHEL 5 :Comment installer et configurer le serveur vsftpd

Comment installer et configurer Memcached sur CentOS 8

Comment installer et configurer le serveur DHCP sur Centos 8

Comment installer et configurer le serveur Apache SVN sur le bureau Linux

Comment installer et configurer GlusterFS sur CentOS 7/CentOS 8

Comment installer et configurer le serveur Sandstorm sur CentOS 8

Comment installer et configurer Privoxy Server sur CentOS 8