Svn

De The Linux Craftsman
Aller à la navigation Aller à la recherche
Serveur
Protocole tcp
Port 3690
Configuration Iptables iptables -I INPUT 2 -p tcp --dport 3690 -j ACCEPT

Introduction

Définition

Subversion (en abrégé svn) est un logiciel de gestion de versions, distribué sous licence Apache et BSD. Il a été conçu pour remplacer CVS. Ses auteurs s'appuient volontairement sur les mêmes concepts (notamment sur le principe du dépôt centralisé et unique) et considèrent que le modèle de CVS est bon, seule son implémentation est perfectible. Wikipedia

Principe

On a un serveur qui centralise toutes les données et tous les développeurs se connectent à ce serveur lorsqu'il veulent enregistrer ou récupérer une version d'un fichier.

  • L'enregistrement s'appelle COMMIT
  • La récupération s'appelle UPDATE
  • Lorsque deux développeurs travaillent sur le même fichier et que les deux COMMIT il y a CONFLIT
  • Un conflit se résout en effectuant un MERGE (enregistrement des modifications des deux développeurs)
  • Un enregistrement d'un fichier s'appelle une VERSION du fichier

Vous l'aurez compris, SVN est un outil qui permet le travail collaboratif mais, comme à chaque fois que l'on travaille en groupe, une certaine rigueur est à respecter !

Préparation

Dans un premier temps, il faudra avoir une connexion à Internet, utiliser un serveur DNS et désactiver SELinux.

Pour ceux qui auraient manqué des étapes, les voici:

Une fois ces étapes effectuées, entrons dans le vif du sujet !

Installation

# yum -y install subversion

Création d'un dépôt

La commande suivante permet de créer un dépôt SVN

# svnadmin create ${NOM_DU_DEPOT}

Remplacez ${NOM_DU_DEPOT} par le nom de votre dépôt et c'est fini !

Accès au dépôt

Tout d'abord, il faut faire un checkout du projet

# svn co svn://${IP}/${NOM_DU_DEPOT}

Accès Web avec HTTPD