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 | ||