Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
informatique:linux:subversion [2011/11/11 06:04] benoit |
informatique:linux:subversion [2019/11/18 13:39] (Version actuelle) benoit [Client] |
||
---|---|---|---|
Ligne 20: | Ligne 20: | ||
Lister l'historique des révisions | Lister l'historique des révisions | ||
svn log | svn log | ||
+ | |||
+ | Connaître les fichiers modifié avant de faire un update : | ||
+ | svn status --show-updates | ||
+ | |||
+ | Afficher le fichier "file.php" à son état de la révision 495. | ||
+ | svn cat file.php -r 495 | ||
+ | |||
+ | Pour le restaurer : | ||
+ | svn cat file.php -r 495 > file.php | ||
Recupération de la révision N°6 | Recupération de la révision N°6 | ||
Ligne 25: | Ligne 34: | ||
- | ===== Serveur ===== | ||
- | ==== Installation et configuration sur serveur apache ==== | + | ===== Serveur Subversion sous Apache ===== |
+ | |||
+ | |||
+ | ==== Installation et configuration ==== | ||
Installer les paquetages pré-requis (sous Debian): | Installer les paquetages pré-requis (sous Debian): | ||
apt-get install subversion libapache2-svn | apt-get install subversion libapache2-svn | ||
Ligne 70: | Ligne 81: | ||
Pour créer un nouveau projet : | Pour créer un nouveau projet : | ||
svnadmin create /opt/subversion/depot/projet1 | svnadmin create /opt/subversion/depot/projet1 | ||
- | chown –R www-data:www-data /opt/subversion/depot/projet1 | + | chown -R www-data:www-data /opt/subversion/depot/projet1 |
Création du compte utilisateur : | Création du compte utilisateur : | ||
Ligne 76: | Ligne 87: | ||
Editer le fichier d'accès : | Editer le fichier d'accès : | ||
- | vim /var/subversion/conf/access | + | vim /opt/subversion/conf/access |
* Ajouter les nouveaux utilisateurs dans la section [groups] | * Ajouter les nouveaux utilisateurs dans la section [groups] | ||
Ligne 95: | Ligne 106: | ||
* « * » : Représente tous les utilisateurs non référencés dans le présent fichier. | * « * » : Représente tous les utilisateurs non référencés dans le présent fichier. | ||
+ | ===== Serveur Subversion sans Apache ===== | ||
+ | |||
+ | ==== Installation et configuration ==== | ||
+ | |||
+ | Installer le package suivant : | ||
+ | subversion | ||
+ | |||
+ | === Création d'un premier dépôt SVN === | ||
+ | **Dans l'exemple ci-dessous nous allons créer un premier dépôt nommé ''mondepot''** | ||
+ | |||
+ | Créer les repertoires suivants: | ||
+ | /home/subversion/repository/mondepot | ||
+ | /home/subversion/admin | ||
+ | |||
+ | Création de ''mondepot'' | ||
+ | svnadmin create /home/subversion/repository/mondepot | ||
+ | |||
+ | Modifier le fichier de conf ''/home/subversion/repository/mondepot/conf/svnserve.conf'' en de-commentant et en modifiant les options suivantes | ||
+ | anon-access = read | ||
+ | auth-access = write | ||
+ | # Fichier contenant les logins et mots de passe | ||
+ | password-db = ../../../admin/.passwd | ||
+ | # Fichier contenant les droit sur les repository | ||
+ | authz-db = ../../../admin/authz | ||
+ | |||
+ | Editer le fichier /home/subversion/admin/authz en ajoutant les lignes suivantes : | ||
+ | [mondepot:/] | ||
+ | benoit = rw | ||
+ | * = r | ||
+ | |||
+ | Editer le fichier /home/subversion/admin/.passwd en ajoutant les lignes suivantes : | ||
+ | benoit = monmotdepasse | ||
+ | |||
+ | Démarrer le demon SVN ainsi: | ||
+ | svnserve -d --root /home/subversion/repository | ||
+ | |||
+ | === Configurer le lancement de SVN au démarrage === | ||
+ | |||
+ | Créer l'utilisateur ''svn'' ainsi | ||
+ | useradd -d /home/subversion -s /bin/false svn | ||
+ | |||
+ | Définir le propriétaire | ||
+ | chown -R svn:svn /home/subversion | ||
+ | |||
+ | |||
+ | == Configuration avec inetd == | ||
+ | Modifier le fichier ''/etc/inetd.conf'' en ajoutant la ligne suivante: | ||
+ | svn stream tcp nowait svn /usr/bin/svnserve svnserve -i -r /home/subversion/repository | ||
+ | |||
+ | == Configuration avec xinetd == | ||
+ | Si xinetd est utilisé créer le fichier ''/etc/xinetd.d/svn'' avec les options suivantes: | ||
+ | # Begin /etc/xinetd.d/svn | ||
+ | service svn | ||
+ | { | ||
+ | port = 3690 | ||
+ | socket_type = stream | ||
+ | protocol = tcp | ||
+ | wait = no | ||
+ | user = svn | ||
+ | server = /usr/bin/svnserve | ||
+ | server_args = -i -r /home/subversion/repository | ||
+ | } | ||
+ | # End /etc/xinetd.d/svn | ||
+ | |||
+ | Redémarrer xinet.d | ||
+ | /etc/init.d/xinetd reload | ||