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.

Guide de référence de svnsync : réplication de dépôt Subversion


svnsync est l'outil de réplication de dépôt à distance de Subversion. En clair, il vous permet de rejouer les propagations d'un dépôt sur un autre dépôt.

Dans tout scénario de réplication, il y a deux dépôts : le dépôt source et le dépôt miroir (ou « destination »). Le dépôt source est le dépôt à partir duquel svnsync lit les révisions. Le dépôt miroir est le dépôt sur lequel svnsync applique les propagations lues sur le dépôt source. Chacun des dépôts peut être un dépôt local ou distant (ils sont toujours uniquement désignés par leur URL).

Le processus svnsync requiert un accès uniquement en lecture sur le dépôt source ; il ne tente jamais aucune modification sur celui-ci. En revanche, bien évidemment, svnsync a besoin d'un accès en lecture et écriture sur le dépôt miroir.

[Avertissement] Avertissement

svnsync est particulièrement sensible aux modifications faites sur le dépôt miroir qui ne sont pas issues d'une opération de réplication. Pour éviter ce genre d'ennui, il est recommandé que svnsync soit le seul processus autorisé à modifier le dépôt miroir.

Les options de svnsync sont globales, de même que pour svn et svnadmin :

Options

--allow-non-empty

Ne pas vérifier (ce que svnsync initialize fait par défaut) que le dépôt en cours d'initialisation est vide de tout historique.

--config-dir REPERTOIRE

Lire les informations de configuration dans le répertoire spécifié plutôt qu'à l'emplacement par défaut (.subversion dans le répertoire de l'utilisateur).

--config-option CONFSPEC

Définir, pour la durée de la commande, la valeur d'une option de configuration. CONFSPEC est une chaîne de caractères qui spécifie l'espace de nom de l'option de configuration, son nom et la valeur que vous voulez lui assigner, formatée ainsi : FICHIER:SECTION:OPTION=[VALEUR] Dans cette syntaxe, FICHIER et SECTION sont des fichiers de la zone de configuration (soit config ou servers) et de la section où se trouve l'option dont vous voulez changer la valeur. OPTION est, bien sûr, le nom de l'option elle-même et VALEUR est la valeur (si vous la donnez) que vous voulez assigner à l'option. Par exemple, pour désactiver temporairement la compression dans le protocole HTTP, utilisez --config-option=servers:global:http-compression=no. Vous pouvez utiliser cette option plusieurs fois pour modifier les valeurs de plusieurs options temporairement.

--disable-locking

Contourner le dispositif de contrôle d'accès exclusif et considérer que l'accès exclusif au dépôt miroir est assuré par un mécanisme extérieur.

--no-auth-cache

Ne pas conserver les éléments d'authentification (par exemple l'identifiant et le mot de passe) dans les zones de configuration de Subversion.

--non-interactive

Dans le cas d'un échec d'authentification ou de droits insuffisants, ne pas demander d'éléments d'authentification (par exemple identifiant et mot de passe) de manière interactive. Cette option est utile quand vous lancez Subversion dans un script totalement automatique et qu'il est plus pertinent de faire échouer Subversion plutôt que d'attendre une réponse interactive.

--quiet (-q)

N'afficher que ce qui est essentiel pendant l'opération.

--revision (-r) ARG

Utilisé avec svnsync copy-revprops pour spécifier une révision ou un intervalle de révision sur lequel effectuer l'opération.

--source-password MOT_DE_PASSE

Précise le mot de passe à utiliser pour s'authentifier auprès du serveur Subversion source. Si cette option n'est pas fournie ou si elle ne permet pas de s'authentifier correctement, Subversion demande, en tant que de besoin, le mot de passe de manière interactive.

--source-prop-encoding ARG

Considérer que les propriétés de révisions du dépôt source sont stockées au format ARG et les transcoder en UTF-8 avant de les copier dans le dépôt miroir.

--source-username NOM

Utiliser le nom d'utilisateur spécifié pour s'authentifier auprès du serveur Subversion source. Si cette option n'est pas fournie ou si elle ne permet pas de s'authentifier correctement, Subversion demande, en tant que de besoin, le nom d'utilisateur de manière interactive.

--steal-lock

Casser, si nécessaire, les verrous qui assurent l'accès exclusif au dépôt miroir. Cette option ne doit être utilisée que lorsqu'un verrou bloque l'accès au dépôt miroir et que vous savez que ce verrou est obsolète, c'est-à-dire quand vous êtes certain qu'aucun autre processus svnsync n'est en train d'accéder à ce dépôt.

--sync-password MOT_DE_PASSE

Utiliser le mot de passe spécifié pour s'authentifier auprès du serveur Subversion destination. Si cette option n'est pas fournie ou si elle ne permet pas de s'authentifier correctement, Subversion demande, en tant que de besoin, le mot de passe de manière interactive.

--sync-username NOM

Utiliser le nom d'utilisateur spécifié pour s'authentifier auprès du serveur Subversion destination. Si cette option n'est pas fournie ou si elle ne permet pas de s'authentifier correctement, Subversion demande, en tant que de besoin, le nom d'utilisateur de manière interactive.

--trust-server-cert

Utilisée avec --non-interactive, accepter les certificats SSL serveurs signés par des autorités inconnues sans en informer l'utilisateur.