CVS, serveur
Un article de Diablotins.org.
|
Installation d'un serveur de gestion de versions CVS
Vous voulez installer un serveur de gestion de versions concurrentes sur votre machine,
pour vos sauvegardes, mise Ă jour de scripts et de fichiers de configuration,
pour développer un projet en équipe ?
Dans cet article, nous avons choisi de présenter CVS.
Sommaire |
Configurer
Ajout d'un utilisateur
Pour cela, vous devez ajouter dans le fichier /etc/group, le groupe «cvs».
# vi /etc/group -- [...] cvs :* :1020 :cvsuser [...]
CVS, est livre dans le monde de FreeBSD, car c'est un des éléments primordiaux de la mise a jour du système.
Voici la marche Ă suivre pour installer rapidement un serveur CVS:
Apres avoir crée un groupe UNIX cvs et un utilisateur membre de ce groupe «cvsuser»:
# adduser cvsuser
La création de cet utilisateur se fait sans password, sans Shell, et ayant pour espace la repository “/usr/local/cvs-root”, soit la “cvsroot” du serveur. Il ne doit être évidement membre que du groupe cvs et d'aucun autre sans plus de privilèges, tel que l'appartenance au groupe wheel.
Création de la répository
Créer un répertoire de Repository.
# mkdir /usr/local/cvs_root
Lancement du Pserver CVS
Editez /etc/inetd.conf, rajoutez-y :
# vi /etc/inetd.conf -- [...] cvspserver stream tcp nowait cvsuser /usr/bin/cvs cvs --allow-root/usr/local/cvs_root pserver [...]
Redémarrez votre super démon Inetd:
# pid inetd # kill -HUP <pid>
Initialisation de la CVSROOT
Initialisez le CVSROOT de cette façon :
# export CVSROOT=/usr/local/cvs_root # cvs init
Mise en place d'un contrôle d'accès built-in CVS
Si vous voulez limiter les droits d'accès au serveur CVS, faites un check out de CVSROOT dans un répertoire :
# cd /tmp # export CVSROOT=/usr/local/cvs_root # cvs co CVSROOT # cd /tmp/CVSROOT
Créez ou éditer un fichier : “/tmp/CVSROOT/access” contenant la liste des utilisateurs autorisés.
Exemple :
# cat /tmp/CVSROOT/access user1 user2
Si il faut :
# cvs add access
Éditez alors le fichier “/tmp/CVSROOT/checkoutlist” et ajoutez-y «access»
Enfin:
# cvs commit # cvs release CVSROOT # cd .. # rm -rf CVSROOT
Utilisation
Petit exemple d'utilisation :
Nous avons créé un logiciel nommé "prog", ses sources se trouvent dans un répertoire "prog".
Nous somme le user : toto
Nous devons d'abord créer cet utilisateur, en tapant :
# adduser toto
Il faut que toto appartienne au groupe cvs, crée précédemment .
Nous allons mettre sous CVS ce code source :
# cd prog # export CVSROOT=":pserver:user@:/usr/local/cvs_root" # cvs login # cvs import prog prog VERSION_INIT
[ le projet se place sur l'arborescence CVS ]
C'est terminé, vérifions maintenant que tout s'est bien passé :
# cd .. # cp prog prog.bak # cvs checkout prog
Vérifiez aussi:
# ls -Rsal prog/ # rm -rf prog.bak
C'est terminé.
