This text is a work in progress—highly subject to change—and may not accurately describe any released version of the Apache™ Subversion® software. Bookmarking or otherwise referring others to this page is probably not such a smart idea. Please visit http://www.svnbook.com/ for stable versions of this book.
Subversion permet à l'utilisateur de contrôler finement son comportement. Beaucoup d'options ont vocation à s'appliquer à l'ensemble des opérations de Subversion. Ainsi, plutôt que de forcer les utilisateurs à se souvenir d'arguments en ligne de commande pour spécifier ces options et de les utiliser à chaque invocation, Subversion utilise des fichiers de configuration, conservés dans une zone de configuration spécifique à Subversion.
La zone de configuration Subversion consiste en une hiérarchie à deux niveaux constituée de noms d'options et de leurs valeurs. Habituellement, cela se traduit par un répertoire dédié qui contient les fichiers de configuration (le premier niveau) : des fichiers texte au format standard INI (dont les « sections » constituent le deuxième niveau). Vous pouvez facilement éditer ces fichiers à l'aide de votre éditeur de texte favori (tel qu'Emacs ou vi). Ils contiennent des directives lues par le client Subversion afin de déterminer le comportement par défaut choisi par l'utilisateur.
La première fois que le client texte interactif
svn est exécuté, il crée une zone de
configuration propre à l'utilisateur. Sur les systèmes de type
Unix, cette zone est un répertoire nommé
.subversion
dans le répertoire personnel
de l'utilisateur. Sur les systèmes Windows, Subversion crée un
dossier nommé Subversion
, généralement
dans la zone Application Data
du
répertoire qui contient le profil de l'utilisateur (qui est
habituellement, au passage, un répertoire caché). Cependant,
sur cette plateforme, l'emplacement exact du profil
utilisateur varie d'un système à l'autre et est dicté par la
base de registre Windows[74].
Nous nous référons à cette zone de configuration propre à
l'utilisateur en utilisant son nom Unix :
.subversion
.
En plus de la zone de configuration propre à
l'utilisateur, Subversion reconnaît l'existence d'une zone de
configuration globale pour le système. Cela permet aux
administrateurs du système d'établir une configuration par
défaut pour l'ensemble des utilisateurs d'une machine donnée.
Notez que la zone de configuration globale seule ne fixe pas de
politique obligatoire : les réglages de l'utilisateur sont
prioritaires par rapport aux réglages globaux et les options
de la ligne de commande ont toujours le dernier mot. Sur les
plateformes de type Unix, la zone de configuration globale
doit se trouver dans le répertoire
/etc/subversion
; sur les machines
Windows, Subversion cherche un répertoire
Subversion
dans le dossier commun
Application Data
(là encore, l'endroit
exact dépend de la base de registre Windows). Au contraire de
la zone propre à l'utilisateur, le programme
svn ne tente pas de créer la zone de
configuration globale.
La zone de configuration propre à l'utilisateur contient
actuellement trois fichiers : deux fichiers de
configuration (config
et
servers
) et un fichier
README.txt
qui décrit le format INI. Lors
de leur création, ces fichiers contiennent les valeurs par
défaut de toutes les options supportées par Subversion,
généralement mises en commentaire et groupées avec une
description textuelle de l'effet de la clé sur le
fonctionnement de Subversion. Pour modifier un comportement
précis, il suffit de charger le fichier de configuration dans
un éditeur de texte et de changer la valeur de l'option
correspondante. Si, par la suite, vous voulez rétablir les
valeurs par défaut, vous n'avez qu'à supprimer ou renommer
votre répertoire de configuration puis lancer une commande
svn inoffensive, telle que
svn --version
. Un nouveau répertoire
de configuration sera créé, qui contiendra les valeurs par
défaut.
Subversion vous permet de supplanter chaque valeur
des options de configuration avec l'option
--config-option
, ce qui peut s'avérer pratique
si vous devez modifier (très) temporairement le comportement de
l'application. Pour plus d'informations sur l'utilisation de
cette option, reportez-vous à
Options de svn.
La zone de configuration propre à l'utilisateur contient
également un cache pour les données d'authentification. Le
répertoire auth
héberge un ensemble de
sous-répertoires qui contiennent des informations mises en
cache, relatives aux différentes méthodes d'authentification
utilisées par Subversion. Ce répertoire est créé de telle
manière que seul l'utilisateur concerné ait accès à son
contenu.
En plus de la zone de configuration classique contenant les fichiers INI, les clients Subversion qui tournent sur une plateforme Windows peuvent aussi utiliser la base de registre Windows pour stocker leurs données de configuration. Les noms des options et leurs valeurs sont les mêmes que dans les fichiers INI. La hiérarchie « fichier/section » est également présente, bien que traitée de manière légèrement différente : dans ce cas, les fichiers et les sections sont juste des niveaux dans l'arborescence des clés de registres.
Subversion cherche les valeurs de configuration
applicables à tout le système sous la clé
HKEY_LOCAL_MACHINE\Software\Tigris.org\Subversion
.
Par exemple, l'option global-ignores
, qui
se trouve dans la section [miscellany]
du
fichier config
, est située dans
HKEY_LOCAL_MACHINE\Software\Tigris.org\Subversion\Config\Miscellany\global-ignores
.
Les valeurs propres à un utilisateur doivent être stockées sous
HKEY_CURRENT_USER\Software\Tigris.org\Subversion
.
Les options de configuration de la base de registre sont analysées avant les options des fichiers INI ; elles sont donc supplantées par les valeurs trouvées dans les fichiers de configuration. En d'autres termes, Subversion cherche les options de configuration dans l'ordre suivant sur un système Windows (les plus prioritaires sont citées en premier) :
les options en ligne de commande ;
les fichiers INI propres à l'utilisateur ;
les valeurs de la base de registre propres à l'utilisateur ;
les fichiers INI applicables à l'ensemble du système ;
les valeurs de la base de registre applicables à l'ensemble du système.
Par ailleurs, la base de registre Windows ne comprend pas
vraiment la notion de « mise en commentaire ».
Cependant, Subversion ignorera toute clé dont le nom commence
par le caractère dièse (#
). Cela vous
permet de mettre en commentaire efficacement une option
Subversion sans avoir à effacer entièrement la clé de la base
de registre, ce qui simplifie clairement la procédure de
restauration de l'option.
Le client texte interactif svn
n'écrit jamais dans la base de registre et ne tentera pas d'y
créer une zone de configuration par défaut. Vous pouvez créer
les clés dont vous avez besoin en utilisant le programme
REGEDIT. Une autre façon de faire consiste à
créer un fichier .reg
(tel que celui
donné dans l'Exemple 7.1, « Exemple de fichier de modification de la base
de registre (.reg) »)
puis à double-cliquer sur l'icône de ce fichier dans
l'explorateur Windows afin d'appliquer les modifications
à votre base de registre.
Exemple 7.1. Exemple de fichier de modification de la base de registre (.reg)
REGEDIT4 [HKEY_LOCAL_MACHINE\Software\Tigris.org\Subversion\Servers\groups] [HKEY_LOCAL_MACHINE\Software\Tigris.org\Subversion\Servers\global] "#http-auth-types"="basic;digest;negotiate" "#http-compression"="yes" "#http-library"="" "#http-proxy-exceptions"="" "#http-proxy-host"="" "#http-proxy-password"="" "#http-proxy-port"="" "#http-proxy-username"="" "#http-timeout"="0" "#neon-debug-mask"="" "#ssl-authority-files"="" "#ssl-client-cert-file"="" "#ssl-client-cert-password"="" "#ssl-pkcs11-provider"="" "#ssl-trust-default-ca"="" "#store-auth-creds"="yes" "#store-passwords"="yes" "#store-plaintext-passwords"="ask" "#store-ssl-client-cert-pp"="yes" "#store-ssl-client-cert-pp-plaintext"="ask" "#username"="" [HKEY_CURRENT_USER\Software\Tigris.org\Subversion\Config\auth] "#password-stores"="windows-cryptoapi" [HKEY_CURRENT_USER\Software\Tigris.org\Subversion\Config\helpers] "#diff-cmd"="" "#diff-extensions"="-u" "#diff3-cmd"="" "#diff3-has-program-arg"="" "#editor-cmd"="notepad" "#merge-tool-cmd"="" [HKEY_CURRENT_USER\Software\Tigris.org\Subversion\Config\tunnels] [HKEY_CURRENT_USER\Software\Tigris.org\Subversion\Config\miscellany] "#enable-auto-props"="no" "#global-ignores"="*.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store" "#interactive-conflicts"="yes" "#log-encoding"="" "#mime-types-file"="" "#no-unlock"="no" "#preserved-conflict-file-exts"="doc ppt xls od?" "#use-commit-times"="no" [HKEY_CURRENT_USER\Software\Tigris.org\Subversion\Config\auto-props]
L'exemple précédent présente le contenu d'un fichier
.reg
qui contient quelques-unes des
options les plus communément utilisées et leurs valeurs
par défaut. Notez la présence de réglages propres à
l'utilisateur (notamment l'éditeur de texte et le stockage
des mots de passe) ainsi que des réglages applicables à
l'ensemble du système (comme les options relatives au
mandataire réseau). Notez également que toutes les options
sont mises en commentaire. Il ne vous reste qu'à supprimer
le caractère dièse (#
) initial des noms
d'options et à leur affecter la valeur que vous
souhaitez.
Dans cette section, nous allons nous intéresser aux options de configuration des programmes que la version actuelle de Subversion comprend.
Le fichier config
contient le reste
des options de configuration de Subversion, celles qui ne
concernent pas le réseau. Actuellement, il n'existe que
quelques options mais elles sont tout de même regroupées dans
des sections en vue d'ajouts futurs.
La section [auth]
contient les
paramètres liés à l'authentification et aux droits sur le
dépôt. Il contient les paramètres suivants :
password-stores
Cette liste délimitée par des virgules spécifie
quel magasin de stockage de mot de passe (s'il en
existe) Subversion doit utiliser pour sauver et
récupérer les éléments d'authentification. Elle indique
également dans quel ordre Subversion doit les essayer.
La valeur par défaut est gnome-keyring,
kwallet, keychain, gpg-agent, windows-crypto-api
qui désigne respectiviement le trousseau GNOME, celui de
KDE, celui de Mac OS X, l'agent GnuPG et l'API
cryptographique de Microsoft Windows. Les magasins qui ne
sont pas disponibles sur le système sont ignorés.
store-passwords
Cette option est obsolète dans le fichier
config
. Elle fait maintenant partie
de la configuration propre à chaque serveur dans le
fichier servers
. Reportez-vous à
la section intitulée « Configuration spécifique à un serveur »
pour plus de détails.
store-auth-creds
Cette option est obsolète dans le fichier
config
. Elle fait maintenant partie
de la configuration propre à chaque serveur dans le
fichier servers
. Reportez-vous à
la section intitulée « Configuration spécifique à un serveur »
pour plus de détails.
La section [helpers]
contrôle quelles
applications tierces Subversion utilise pour accomplir
certaines tâches. Les options licites pour cette section
sont :
diff-cmd
Spécifiez ici le chemin absolu vers un programme que Subversion utilisera pour générer l'affichage « diff » (celui produit par la commande svn diff). Par défaut, Subversion utilise une bibliothèque interne pour les deltas. Si vous spécifiez une valeur, Subversion utilisera ce programme tiers. Lisez la section intitulée « Utilisation des outils externes de comparaison et de fusion » pour plus de détails sur l'utilisation de tels programmes.
diff-extensions
Comme pour l'option en ligne de commande
--extensions
(-x
),
spécifiez ici les options complémentaires que vous
souhaitez passer au programme tiers des deltas.
L'ensemble des options ayant un sens varie en fonction
du programme utilisé pour traiter les deltas. Lisez la
sortie produite par svn help diff
pour obtenir des détails. La valeur par défaut de cette
option est -u
.
diff3-cmd
Spécifiez ici le chemin absolu vers un programme de traitement des deltas à trois entrées. Subversion utilisera ce programme pour fusionner les changements effectués par l'utilisateur avec ceux reçus par le dépôt. Par défaut, Subversion utilise une bibliothèque interne de traitement des deltas. Si vous spécifiez une valeur, Subversion utilisera ce programme tiers. Reportez-vous à la section intitulée « Utilisation des outils externes de comparaison et de fusion » pour plus de détails sur l'utilisation de tels programmes.
diff3-has-program-arg
Cette option binaire doit être positionnée à
true
si le programme spécifié par
l'option diff3-cmd
accepte comme
paramètre l'option
--diff-program
.
editor-cmd
Spécifiez ici le programme que Subversion utilisera pour demander à l'utilisateur de renseigner des métadonnées ou pour résoudre des conflits de manière interactive. Lisez la section intitulée « Utilisation d'éditeurs externes » pour plus de détails sur l'utilisation d'éditeurs de textes tiers avec Subversion.
merge-tool-cmd
Spécifiez ici le programme tiers que Subversion utilisera pour effectuer des fusions à trois entrées sur vos fichiers suivis en versions. Lisez la section intitulée « Utilisation des outils externes de comparaison et de fusion » pour plus de détails sur l'utilisation de tels programmes.
La section [tunnels]
vous permet de
définir des tunnels lors de l'utilisation de
svnserve avec le protocole de connexion
svn://
. Pour plus de détails, lisez
la section intitulée « Encapsulation de svnserve dans un tunnel SSH ».
La section [miscellany]
contient tout
ce qui n'a pas été mis ailleurs[75]. Dans cette section, vous
trouverez :
enable-auto-props
Elle demande à Subversion d'ajouter automatiquement
des propriétés sur les fichiers ajoutés ou importés. La
valeur par défaut est no
(c'est-à-dire non), vous devez donc la basculer sur
yes
pour activer la fonctionnalité.
La section [auto-props]
de ce fichier
spécifie quelles propriétés doivent être définies sur
ces fichiers.
global-ignores
Lorsque vous lancez la commande svn
status, Subversion liste les fichiers et
dossiers non suivis en versions avec ceux suivis en
versions, en les notant avec le caractère
?
(voir la section intitulée « Vue d'ensemble des changements effectués »). Parfois, il
n'est pas commode de voir ces éléments non suivis en
versions sans intérêt (par exemple les fichiers objets
produits par la compilation du programme) dans la sortie
de la commande. L'option
global-ignores
est une liste de
motifs, séparés par des espaces, qui décrit les noms de
fichiers et dossiers que Subversion doit ignorer sauf
s'ils sont suivis en versions. La valeur par défaut est
*.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a
*.pyc *.pyo *.rej *~ #*# .#* .*.swp
.DS_Store
.
De la même façon que svn status,
les commandes svn add et svn
import ignorent les fichiers qui correspondent
aux éléments de la liste quand ils passent en revue un
dossier. Vous pouvez redéfinir ce comportement pour une
exécution de chacune de ces commandes en spécifiant
explicitement le nom de fichier ou en utilisant l'option
binaire --no-ignore
en ligne de
commande.
Pour plus d'informations sur la gestion des éléments à ignorer, reportez-vous à la section intitulée « Occultation des éléments non suivis en versions ».
interactive-conflicts
C'est une option booléenne qui spécifie si
Subversion doit essayer de résoudre les conflits en mode
interactif. Si cette valeur est yes
(ce qui est la valeur par défaut), Subversion demandera
à l'utilisateur d'indiquer comment traiter les conflits
comme cela a été montré dans la section intitulée « Résolution des conflits ». Sinon, il annotera
les fichiers comme étant en conflit et continue son
opération, reportant la résolution à plus tard.
log-encoding
Cette variable définit l'encodage des caractères
pour les commentaires de propagations. C'est une forme
permanente de l'option --encoding
(voir
Options de svn). Le dépôt Subversion
stocke les commentaires de propagation en UTF-8 et suppose
que vos commentaires de propagations sont écrits en utilisant
l'encodage par défaut de votre système. Vous pouvez donc
spécifier ici l'encodage utilisé pour vos commentaires de
propagation si ceux-ci sont écrits en utilisant un
encodage différent.
mime-types-file
Cette option, apparue avec Subversion 1.5, spécifie
le chemin d'un fichier de correspondance pour les types
MIME, sur le même modèle que le fichier
mime.types
des serveurs HTTP
Apache. Subversion utilise ce fichier pour associer un
type MIME aux fichiers qui viennent d'être ajoutés ou
importés. Lisez la section intitulée « Configuration automatique des propriétés » et la section intitulée « Type de contenu des fichiers » pour
plus d'informations sur la détection et l'utilisation
du type des fichiers par Subversion.
no-unlock
Cette option booléenne correspond à l'option
--no-unlock
de la commande svn
commit. Elle indique à Subversion de ne pas
libérer les verrous posés sur les fichiers que vous
venez de propager. Si cette option est définie à
yes
, Subversion ne libérera jamais
automatiquement les verrous, il vous laissera le soin de
lancer explicitement la commande svn
unlock. La valeur par défaut est
no
.
preserved-conflict-file-exts
La valeur de cette option est une liste d'extensions de fichiers (séparées par des espaces) que Subversion doit préserver quand il génère des noms de fichiers lors des conflits. Par défaut, cette liste est vide. C'est une nouvelle option apparue dans Subversion 1.5.
Quand Subversion détecte des conflits dans les
modifications effectuées sur un fichier, il soumet la
résolution de ces conflits à l'utilisateur. Pour aider
l'utilisateur à les résoudre, Subversion garde une
copie originale des différentes versions en lice du
fichier dans la copie de travail. Par défaut, ces
fichiers ont des noms construits en ajoutant au nom de
fichier original une extension particulière telle que
.mine
ou .REV
(où REV
est un numéro de
révision). Ceci peut être gênant sur les systèmes
d'exploitation qui utilisent les extensions de noms
de fichiers pour déterminer l'application par défaut
à utiliser pour ouvrir et éditer le fichier, le fichier
avec la nouvelle extension n'étant plus automatiquement
ouvert dans l'application prévue. Par exemple, si le
fichier NotesDeVersion.pdf
est en
conflit, les fichiers générés risquent de s'appeler
NotesDeVersion.pdf.mine
ou
NotesDeVersion.pdf.r4231
. Bien
que votre système soit peut-être configuré pour ouvrir
les fichiers .pdf
avec Acrobat
Reader, il n'existe sûrement pas d'application
préconfigurée pour ouvrir les fichiers avec
l'extension .r4231
.
Vous pouvez arranger cela en utilisant cette option de
configuration. Pour les fichiers dont l'extension est
spécifiée, Subversion ajoutera au nom des fichiers générés
l'extension particulière liée au conflit, mais il rajoutera
aussi à la suite l'extension originale. Dans l'exemple
précédent, en supposant que pdf
est une
des extensions configurée dans la liste ci-dessus, les noms
des fichiers générés pour
NotesDeVersion.pdf
vont être
NotesDeVersion.pdf.mine.pdf
et
NotesDeVersion.pdf.r4231.pdf
.
Comme chaque fichier se termine par
.pdf
, l'application appropriée
sera utilisée pour les visualiser.
use-commit-times
Normalement, les fichiers de votre copie de travail ont un horodatage qui indique la dernière fois qu'ils ont été modifiés par une action, que ce soit votre éditeur ou une commande svn. C'est généralement le comportement attendu par les développeurs de logiciels, car les chaînes de compilation utilisent souvent ces horodatages pour déterminer quels fichiers ont besoin d'être recompilés.
Toutefois, il existe certaines situations où l'on désire
que l'horodatage des fichiers de la copie de travail indique
la dernière modification dans le dépôt. La commande
svn export fixe toujours l'horodatage sur
les arborescences qu'elle produit à l'« horodatage de la
dernière propagation ». En configurant cette variable
à yes
,les commandes svn
checkout, svn update,
svn switch et svn
revert fixeront l'horodatage des fichiers qu'elles
modifient à l'horodatage de la dernière propagation.
La section [auto-props]
contrôle la
possibilité par le client Subversion de positionner
automatiquement certaines propriétés sur les fichiers qui
sont ajoutés ou importés. Elle contient un nombre arbitraire
de paires clé-valeur au format MOTIF =
NOM_PROPRIETE=VALEUR[;NOM_PROPRIETE=VALEUR ...]
,
où MOTIF
est un motif de nom de fichier
qui correspond à un ou plusieurs noms de fichiers et le
reste de la ligne est une liste d'affectations (séparées
par des points-virgules) de valeurs à des propriétés. Si
vous avez besoin de points-virgules dans les noms de propriétés
ou pour leurs valeurs, vous pouvez « échapper » ce
caractère en le doublant.
$ cat ~/.subversion/config … [auto-props] *.c = svn:eol-style=native *.html = svn:eol-style=native;svn:mime-type=text/html;; charset=UTF8 *.sh = svn:eol-style=native;svn:executable … $ cd projets/mon-projet $ svn status ? www/index.html $ svn add www/index.html A www/index.html $ svn diff www/index.html … Modification de propriétés sur www/index.html ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/html; charset=UTF8 Added: svn:eol-style ## -0,0 +1 ## +native $
Si un nom de fichier correspond à plusieurs motifs, autant de
propriétés seront positionnées ; cependant, il n'y a
aucune garantie que les auto-props seront appliquées dans
l'ordre dans lequel elles apparaissent dans le fichier
config
; il ne faut donc pas
définir de règles susceptibles d'en écraser d'autres. Vous
pouvez trouver de nombreux exemples d'utilisation
d'auto-props dans le fichier config
.
Enfin, n'oubliez pas de positionner
enable-auto-props
à yes
dans la section [miscellany]
si vous voulez
activer auto-props.
Depuis Subversion 1.8 la section
[working-copy]
permet de configurer les copies
de travail. Les options reconnues dans cette section
sont :
exclusive-locking-clients
Cette option active le verrouillage exclusif de SQLite
pour le client, ce qui permet d'améliorer les performances
dans le cas de copies de travail stockées sur des disques
réseaux. En affectant svn
à cette
variable, vous demandez au client texte interactif de
Subversion d'utiliser le verrouillage exclusif. Cela diminue
le temps pris par le verrouillage, mais cela signifie qu'un
seul client Subversion pourra accéder à la copie de travail
à la fois. Un deuxième client qui essaie d'accéder à la copie
de travail verrouillée sera bloqué pendant dix secondes puis
recevra une erreur. Dans la plupart des cas, le verrouillage
partagé est préférable mais si la copie de travail est
stockée sur un disque réseau plutôt que sur un disque local,
le temps de verrouillage est plus significatif. Lorsque
vous travaillez sur de grosses copies de travail sur des
disques réseau, le verrouillage exclusif peut apporter une
amélioration sensible des performances, en étant jusqu'à deux
ou trois fois plus rapide dans certains cas. Cette option est
apparue dans Subversion 1.8.
exclusive-locking
En affectant true
à cette variable,
vous activez le verrouillage exclusif SQLite des copies de
travail pour tous les clients Subversion 1.8. L'activation
de cette option peut engendrer des erreurs sur certains
clients. La valeur par défaut est false
.
Cette option est apparue avec Subversion 1.8.
Le fichier servers
contient les
options de configuration relatives aux couches réseau. Il
y a deux sections spéciales dans ce fichier :
[groups]
et [global]
.
La section [groups]
n'est rien d'autre
qu'un tableau de références croisées. Les clés de cette
section sont les noms des autres sections du fichier ;
ses valeurs sont des globs (des
représentations textuelles qui peuvent contenir des
caractères joker) qui sont comparés aux noms des machines
auxquelles des requêtes Subversion sont envoyées.
[groups] babasses-red-beans = *.red-bean.com collabnet = svn.collab.net [babasses-red-beans] … [collabnet] …
Quand vous utilisez Subversion en réseau, il essaie de faire
correspondre le nom du serveur auquel il tente de se connecter avec
un nom de groupe de la section [groups]
. Si une
correspondance existe, Subversion vérifie alors s'il existe dans le
fichier servers
une section dont le nom est
le nom du groupe correspondant. Le cas échéant, il tire de cette
section la configuration réseau à appliquer.
La section [global]
contient la configuration
à appliquer à tous les serveurs qui ne correspondent à aucun glob
de la section [groups]
. Les options disponibles
dans cette section sont exactement les mêmes que pour les autres
sections du fichier (exceptée bien sûr la section spéciale
[groups]
) et sont :
http-auth-types
C'est une liste (dont les éléments sont séparés par
des points-virgules) de méthodes d'authentification que le
client acceptera. Les méthodes valides sont
basic
, digest
et
negotiate
, sachant que le comportement par
défaut est d'accepter n'importe quelle méthode. Un client qui
ne veut pas transmettre en clair ses éléments
d'authentification peut, par exemple, affecter la valeur
digest;negotiate
à cette option (et ne
mentionnera donc pas basic
). Notez que
cette option n'est prise en compte que par le module
Subversion pour les accès HTTP basé sur la bibliothèque
Neon.
http-compression
Cette option spécifie si Subversion doit envoyer des
requêtes réseau compressées vers les serveurs DAV. La valeur
par défaut est yes
(cependant, la
compression ne sera effective que si la couche réseau a été
compilée avec le support de la compression). En affectant la
valeur no
, vous désactivez la compression
et vous pourrez alors analyser plus facilement les
transmissions réseau.
http-library
La variable http-library
permet de
spécifier (de manière générale ou pour un groupe de serveurs
particuliers seulement) lequel des modules d'accès WebDAV
vous souhaitez utiliser. Avant la version 1.8, Subversion
proposait deux modules : l'implémentation originale
libsvn_ra_neon
(choisie avec la valeur
neon
) et la plus récente
libsvn_ra_serf
(choisie avec la valeur
serf
). Depuis Subversion 1.8, seule
libsvn_ra_serf
reste disponible.
Cette option reste présente, cependant, car le fichier de
configuration se veut aussi indépendant que possible de la
version de Subversion. Les utilisateurs qui disposent de
plusieurs versions de Subversion installées sur leur système
peuvent vouloir utiliser libsvn_ra_neon
pour des sites sur lesquels ils se connectent avec de
vieilles versions de Subversion.
http-proxy-exceptions
Cette option contient une liste de motifs (séparés par des virgules) de noms de machines qui doivent être contactées directement, sans passer par le mandataire. La syntaxe des motifs est la même que celle utilisée par le shell Unix pour les noms de fichiers. L'accès aux dépôts d'une machine dont le nom correspond à l'un de ces motifs se fera sans passer par un mandataire.
http-proxy-host
Cette option contient le nom de la machine mandataire pour les requêtes HTTP de Subversion. La valeur par défaut est vide, ce qui signifie que Subversion ne tentera pas de faire passer ses requêtes par un mandataire mais essaiera de contacter la machine de destination directement.
http-proxy-password
Cette option spécifie le mot de passe à fournir à la machine mandataire. Par défaut, la valeur est vide.
http-proxy-port
Cette option contient le numéro du port à utiliser sur la machine mandataire. Par défaut, la valeur est vide.
http-proxy-username
Cette option spécifie le nom d'utilisateur à fournir à la machine mandataire. Par défaut, la valeur est vide.
http-timeout
Cette option contient la durée maximum, en secondes,
pendant laquelle Subversion attend la réponse du serveur. Si
vous rencontrez des problèmes d'opérations Subversion qui
expirent à cause d'une connexion réseau trop lente, vous
devez augmenter cette valeur. Avec Subversion 1.8 (ou des
versions plus anciennes utilisant le module HTTP basé sur
Serf), utilisez la valeur 0
pour
désactiver le délai d'attente maximal.
neon-debug-mask
Spécifier ici un masque binaire sous la forme d'un entier
que la bibliothèque HTTP sous-jacente Neon utilise pour
définir le type d'affichage de débogage que vous voulez. La
valeur par défaut est 0
, ce qui n'affiche
aucune information de débogage. Avant la version 1.8, la
plupart des clients Subversion utilisaient Neon
(via le module d'accès au
dépôt libsvn_ra_neon
) pour les
communications WebDAV/HTTP entre le client et le serveur. Le
support de libsvn_ra_neon
a été enlevé
dans Subversion 1.8 ce qui rend cette option obsolète pour
les nouvelles installations de Subversion.
ssl-authority-files
Cette option contient une liste de chemins (séparés par des points-virgules) vers les fichiers contenant les certificats des autorités de certifications (abrégé en AC en français et CA en anglais) qui doivent être reconnues comme de confiance par le client Subversion lors des accès aux dépôts en HTTPS.
ssl-client-cert-file
Si un hôte (ou un ensemble d'hôtes) demande un certificat SSL au client, vous serez invité à fournir le chemin de votre certificat. En affectant un chemin à cette variable, Subversion sera capable de trouver automatiquement votre certificat et ne vous sollicitera pas. Il n'existe pas d'emplacement standard pour stocker un certificat utilisateur sur le disque ; Subversion va le chercher à l'endroit que vous lui spécifiez.
ssl-client-cert-password
Si votre certificat client SSL est protégé par une
phrase de passe, Subversion vous la demandera à chaque fois
que le certificat est utilisé. Si vous trouvez cela pénible
(et que cela ne vous dérange pas que cette phrase de passe
soit stockée dans le fichier servers
),
vous pouvez affecter la phrase de passe de votre certificat à
cette variable. Vous ne serez plus sollicité.
ssl-pkcs11-provider
La valeur affectée à cette option est le nom du fournisseur PKCS#11 auquel Subversion demande un certificat client SSL (si le serveur en demande un). Cette option n'est pertinente que pour le module HTTP basé sur Neon, qui a été enlevé de Subversion dans la version 1.8.
ssl-trust-default-ca
Mettez cette variable à yes
si vous voulez que Subversion fasse automatiquement
confiance à l'ensemble des autorités de certification
livrées par défaut avec OpenSSL.
store-auth-creds
cette option est équivalente à
store-passwords
sauf qu'elle applique la
mise en cache sur le disque (ou non) à
l'ensemble des informations
d'authentification : identifiants, mots de passe,
certificats serveur et tout autre type d'élément pouvant être
mis en cache.
store-passwords
Cette option demande à Subversion de garder en cache
(ou non) les mots de passe qui sont tapés par l'utilisateur
en réponse aux demandes d'authentification des serveurs. La
valeur par défaut est yes
. Remplacez cette
valeur par no
pour désactiver la mise en
cache sur le disque. Vous pouvez outrepasser cette option
pour un appel donné d'une commande svn en
utilisant l'option de ligne de commande
--no-auth-cache
(pour les sous-commandes qui
acceptent cette option). Pour plus d'informations, consultez
la section intitulée « Mise en cache des éléments d'authentification ». Notez
que, indépendamment de la valeur pour cette option,
Subversion ne stockera jamais les mots de passe en clair à
moins que l'option
store-plaintext-passwords
ne soit
positionnée aussi à yes
.
store-plaintext-passwords
Cette variable n'est important que pour les systèmes de
type Unix. Elle contrôle ce que le client Subversion fait
lorsque le mot de passe pour le domaine d'authentification en
cours ne peut être mis en cache sur le disque que en clair,
dans la zone ~/.subversion/auth/
. Vous
pouvez affecter yes
(resp.
no
) pour autoriser (resp. interdire) la
mise en cache des mots de passe en clair. La valeur par
défaut est ask
, ce qui entraine que le
client Subversion vous demande ce qu'il faut faire à chaque
fois qu'un nouveau mot de passe doit être ajouté dans la
zone de cache ~/.subversion/auth/
.
store-ssl-client-cert-pp
Cette option contrôle si Subversion met en cache les
phrases de passe pour les certificats SSL clients de
l'utilisateur. La valeur par défaut est
yes
. Vous pouvez fixer la valeur à
no
pour interdire la
mise en cache des phrases de passe.
store-ssl-client-cert-pp-plaintext
Cette variable contrôle si Subversion, au moment de la
mise en cache de la phrase de passe d'un certificat SSL
client, sera autorisé à le faire en stockant cette
information en clair sur le disque. La valeur par défaut est
ask
, ce qui entraine que le
client Subversion vous demande ce qu'il faut faire à chaque
fois qu'une nouvelle phrase de passe doit être ajoutée dans
la zone de cache ~/.subversion/auth/
.
Vous pouvez définir la valeur à yes
ou
no
pour indiquer votre préférence et ainsi
éviter d'être sollicité à chaque fois.