Nom

Directives de configuration de mod_dav_svn — Directives de configuration Apache pour les dépôts Subversion accessibles via un serveur HTTP Apache.

Description

Cette section décrit brièvement chaque directive de configuration Apache pour Subversion. Pour une description plus approfondie, veuillez vous référer à la section intitulée « httpd, le serveur HTTP Apache ».)

Directives

Voici les directives du fichier httpd.conf qui s'appliquent au module mod_dav_svn :

DAV svn

Doit être incluse dans chaque bloc Directory ou Location pour un dépôt Subversion. Elle indique au serveur httpd d'utiliser le dorsal mod_dav pour gérer les requêtes.

SVNAllowBulkUpdates On|Off

Bascule le support pour les réponses complètes aux requêtes de mises à jour de type REPORT. Les clients Subversion utilisent les requêtes REPORT pour obtenir des informations relatives aux extractions et mises à jour de la part de mod_dav_svn. Ils peuvent demander au serveur d'envoyer cette information sous deux formes : soit la totalité des informations concernant l'arborescence dans une seule réponse, soit un skelta (une représentation squelettique des modifications de l'arborescence) qui contient les informations juste nécessaires au client pour déterminer quelles données supplémentaires demander au serveur. Quand cette directive est incluse avec la valeur Off, mod_dav_svn ne répond aux requêtes REPORT qu'avec des réponses skelta, quelle que soit la forme demandée par le client.

La plupart des lecteurs n'aura jamais à utiliser cette directive. Elle existe uniquement pour les administrateurs qui désirent (pour des raisons de sécurité ou d'audit) forcer les clients à retirer individuellement les fichiers et répertoires nécessaires aux extractions et mises à jour, et ainsi laisser des traces de toutes les requêtes GET et PROPFIND dans les journaux d'Apache. La valeur par défaut de cette directive est On.

SVNAutoversioning On|Off

Quand la valeur est On, elle autorise les requêtes en écriture de la part des clients WEBDAV pour générer des propagations automatiques. Une entrée de journal générique est créée automatiquement et associée à chaque révision. Si vous autorisez la gestion de versions automatique, vous voudrez sûrement spécifier ModMimeUsePathInfo On de manière à ce que mod_mime puisse définir svn:mime-type au type MIME correct automatiquement (pour autant que mod_mime sache le faire, bien évidemment). Pour plus d'informations, voir l'Annexe C, WebDAV et la gestion de versions automatique. La valeur par défaut de cette directive est Off.

SVNPath chemin-vers-repertoire

Spécifie le chemin de la racine des fichiers du dépôt Subversion dans le système de fichiers. Dans un bloc de configuration d'un dépôt Subversion, soit cette directive est présente, soit SVNParentPath doit l'être, mais pas les deux.

SVNSpecialURI composant

Spécifie l'URI (espace de noms) pour les ressources spéciales de Subversion. La valeur par défaut est !svn, et la majorité des administrateurs n'utilisera jamais cette directive. Ne la définissez que si vous avez un besoin impérieux d'avoir un fichier dont le nom est !svn dans votre dépôt. Si vous changez cette valeur dans un serveur déjà en fonction, cela endommagera toutes les copies de travail déjà diffusées. Vos utilisateurs vous poursuivront alors avec des fourchettes et des torches.

SVNReposName nom

Spécifie le nom du dépôt Subversion à utiliser dans les réponses aux requêtes HTTP GET. Cette valeur est ajoutée en tête du titre de chaque listing de répertoire (qui sont affichés quand vous naviguez dans un dépôt Subversion avec un navigateur Web). Cette directive est optionnelle.

SVNIndexXSLT chemin-vers-repertoire

Spécifie l'URI d'une transformation XSL pour les index de répertoires. Cette directive est optionnelle.

SVNParentPath chemin-vers-repertoire

Spécifie le chemin dans le système de fichiers du répertoire racine dont les sous-répertoires sont des dépôts Subversion. Dans un bloc de configuration d'un dépôt Subversion, soit cette directive est présente, soit SVNPath l'est, mais pas les deux.

SVNPathAuthz On|Off|short_circuit

Définit le contrôle d'accès basé sur les chemins en autorisant les sous-requêtes (On) ou en les interdisant (Off ; Voir la section intitulée « Désactivation du contrôle sur les chemins ») ou en interrogeant directement mod_authz_svn (short_circuit). La valeur par défaut de cette directive est On.

SVNListParentPath On|Off

Quand cette directive est définie à On, elle autorise les requêtes GET sur SVNParentPath, ce qui produit l'affichage du listing de tous les dépôts sous le chemin considéré. La valeur par défaut est Off.

SVNMasterURI url

Spécifie l'URI d'un dépôt maître Subversion (utilisée dans le cadre d'un serveur mandataire en écriture).

SVNActivitiesDB chemin-vers-repertoire

Spécifie le chemin dans le système de fichiers où les activités de la base de données doivent être stockées. Par défaut, mod_dav_svn crée et utilise un répertoire dans le dépôt appelé dav/activities.d. Le chemin spécifié par cette directive doit être un chemin absolu.

Si un chemin est spécifié à l'aide de SVNParentPath, mod_dav_svn ajoute le nom de fichier (basename) du dépôt au chemin fourni dans cette directive. Par exemple :

<Location /svn>
  DAV svn

  # toute URL de type "/svn/truc" est transformée en
  # /net/svn.nfs/depots/truc
  SVNParentPath         "/net/svn.nfs/depots"

  # toute URL de type "/svn/machin" est transformée en base de données
  # activités dans /var/db/svn/activites/truc
  SVNActivitiesDB       "/var/db/svn/activites"
</Location>

Journalisation de haut niveau

Voici la liste des messages de haut niveau produits par le mécanisme de journalisation Apache pour les actions Subversion. Un exemple est fourni pour chaque type de message. Reportez-vous à la section intitulée « Journalisation Apache » pour les détails relatifs à la journalisation.

Extraction ou export

checkout-or-export /chemin r62 depth=infinity

Propagation

commit harry r100

Différences

diff /chemin r15:20 depth=infinity ignore-ancestry

diff /chemin1@15 /chemin2@20 depth=infinity ignore-ancestry

Parcours d'un répertoire

get-dir /trunk r17 text

Parcours d'un fichier

get-file /chemin r20 props

Parcours des révisions d'un fichier

get-file-revs /chemin r12:15 include-merged-revisions

Parcours des informations de fusion

get-mergeinfo (/chemin1 /chemin2)

Verrouillage

lock /chemin steal

Entrées du journal

log (/chemin1,/chemin2,/chemin3) r20:90 discover-changed-paths revprops=()

Rejeu de révisions (svnsync)

replay /chemin r19

Changements de propriétés de révisions

change-rev-prop r50 nom-de-propriete

Liste des propriétés de révision

rev-proplist r34

Status

status /chemin r62 depth=infinity

Re-aiguillage

switch /cheminA /cheminB@50 depth=infinity

Déverrouillage

unlock /chemin break

Mise à jour

update /chemin r17 send-copyfrom-args