[LJP-Infos] Créer - installer un serveur Apache SVN
Cette vidéo montre comment installer et configurer un serveur SVN.
SVN est un système de contrôle de révision / contrôle de version / contrôle de source vraiment facile à utiliser.
Il est basé sur Apache SVN.
Avant de pouvoir l'utiliser et voir ce qu'on peut faire avec, on n'a pas le choix que d'installer un serveur avant.
Ici la vidéo montre comment créer simplement un serveur SVN sous Linux, ici sur une Redhat like.
Mais finalement c'est pareil ou presque sur Debian Ubuntu ou tout autre système.
Puis vous allez voir comment créer un dépôt, pour voir ce que ça donne et vérifier que le serveur est bien fonctionnel.
Pour terminer le client sera rapidement abordé, pour un emploi complet, ça sera pour une prochaine fois.
Les commandes de la vidéo sont disponibles ici:
https://drive.google.com/file/d/1vh2cJYLnR8HuvuKHXax4qpLiMJmP95hV/viewCe document présente les queqlues commandes utilisées dans la vidéo.
Elles permettront de créer un serveur SVN de base.
Elles sont a adapter suivant votre configuration (nom de machine, version, adresse IP)
Ce document est disponible à cette adresse: https://drive.google.com/file/d/1vh2cJYLnR8HuvuKHXax4qpLiMJmP95hV/view?usp=share_link
LJP-Infos le 25/03/2023
=========================================================================================================
dnf update -y
dnf install httpd subversion mod_dav_svn -y
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --reload
mkdir /var/www/html/repo
svnadmin create /var/www/html/repo/svn
vi /etc/httpd/conf.d/subversion.conf
<Location /repo>
DAV svn
SVNParentPath /var/www/html/repo
AuthType Basic
AuthName "Apache SVN Repositories"
AuthUserFile /etc/httpd/dav_svn.passwd
Require valid-user
</Location>
touch /etc/httpd/dav_svn.passwd
htpasswd -cm /etc/httpd/dav_svn.passwd utilisateur
htpasswd -m /etc/httpd/dav_svn.passwd autres_utilisateur
chown -R apache:apache /var/www/html/repo/svn
chmod -R 770 /var/www/html/repo/svn
systemctl enable httpd --now
mkdir /projets_svn
ln -s /var/www/html/repo/svn /projets_svn/
dnf install unzip wget php -y
systemctl restart httpd
cd /tmp
wget https://github.com/websvnphp/websvn/archive/refs/tags/2.8.1.zip
unzip 2.8.1.zip -d /var/www/html
mv /var/www/html/websvn-2.8.1/* /var/www/html/
rm -rf /var/www/html/websvn-2.8.1
cp /var/www/html/include/distconfig.php /var/www/html/include/config.php
vi /var/www/html/include/config.php
$config->parentPath('/var/www/html/repo'); ==> web
cd /var/www/html/repo/
svn checkout svn+ssh://localhost/var/www/html/repo/svn
cd /var/www/html/repo/svn
ls -la
svn mkdir /var/www/html/repo/svn/test
svn commit -m "first" ==> web
svn mkdir /var/www/html/repo/svn/test1
svn cp test preprod
svn cp preprod prod
cd /var/www/html/repo/svn
svn commit -m "add preprod / prod"
==== Client
===========
cd /tmp
svn checkout svn+ssh://192.168.1.41/var/www/html/repo/svn/test
svn checkout svn+ssh://192.168.1.41/var/www/html/repo/svn/test1
svn checkout svn+ssh://192.168.1.41/var/www/html/repo/svn/preprod
cd test
touch README
svn add README
svn commit -m "add README file" ==> web
cd /tmp/test1
svn merge svn+ssh://192.168.1.41/var/www/html/repo/svn/test
cd /tmp/preprod
svn merge svn+ssh://192.168.1.41/var/www/html/repo/svn/test
Time code:
01:33 Environnement, contexte, définition, pourquoi utiliser SVN
03:59 Prérequis, installation
06:49 Configuration de base
16:15 Accès au serveur
17:47 Avec une interface web c'est mieux
25:16 Accès à l'interface
27:42 Initialiser le repos pour en faire un copie valide
30:39 Créer le premier projet
34:57 Créer des branches
39:38 Premiers pas sur un poste client
45:33 Infos pratiques coté client
48:59 Le client Windows