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.

Nom

start-commit — Notification du début d'une propagation.

Synopsis

start-commit CHEMIN_DÉPÔT UTILISATEUR CAPACITÉS NOM_TRANSACTION

Description

La procédure automatique start-commit est activée immédiatement après que la transaction de propagation ne soit créée et que ses propriétés ne soient fixées aux valeurs initiales. Typiquement, elle est utilisée pour décider rapidement s'il convient d'interdire la propagation, en évitant d'attendre que le long processus de propagation n'échoue à la fin en raison, par exemple, de droits insuffisants alloués à l'utilisateur pour propager une révision ou d'invalidation de métadonnées relatives à la propagation.

Si le code de retour de la procédure automatique start-commit est non nul, la propagation est arrêtée, la transaction de propagation détruite et tout ce qui a été écrit vers stderr est renvoyé vers le client.

La procédure automatique start-commit n'a pas vocation à valider le contenu d'une propagation puisqu'elle est appelée avant qu'aucune modification de fichier ou de répertoire ne soit transmise. Utilisez la procédure automatique pre-commit (qui est décrite dans pre-commit dans ce guide de référence) pour cela.

[Note] Note

Avant Subversion 1.8, Subversion appelait la procédure automatique star-commit avant de créer la transaction de propagation. Un échec de la procédure entrainait qu'il n'y avait aucune transaction créée. Subversion 1.8 a modifié cet enchainement, ce qui permet à start-commit d'avoir accès aux propriétés de la transaction, dont le commentaire de propagation (entre autres choses).

Paramètres d'entrée

Les arguments de la ligne de commande passés à la procédure automatique sont, dans l'ordre :

  1. chemin du dépôt

  2. identifiant (authentifié) de l'utilisateur qui initie la propagation ;

  3. liste, dont les éléments sont séparés par des virgules, de capacités que le client passe au serveur, dont depth, mergeinfo et log-revprops (à partir de Subversion 1.5) ;

  4. nom de la transaction de propagation (nouveau dans Subversion 1.8)

Utilisations principales

Contrôle d'accès (par exemple, interdiction temporaire d'effectuer des propagations pour telle ou telle raison).

Un moyen de n'autoriser l'accès qu'à des clients qui possèdent certaines capacités.