Dieser Text befindet sich gegenwärtig in Bearbeitung, unterliegt ständigen Änderungen und kann dadurch nicht stets akkurat irgendeine freigegebene Version der Software Apache™ Subversion® beschreiben. Das Speichern dieser Seite als Lesezeichen oder andere auf diese Seite zu verweisen, ist keine so gute Idee. Besuchen Sie http://www.svnbook.com/, um stabile Versionen dieses Buchs zu erhalten.

Name

start-commit — Ankündigung des Beginns einer Übergabe.

Übersicht

start-commit REPOS-PATH USER CAPABILITIES TXN-NAME

Beschreibung

Der Hook start-commit wird unmittelbar nach Erstellung der Übergabe-Transaktion mit ihren gesetzten Eigenschaften ausgeführt. Er wird üblicherweise als ein früher Abbruchmechanismus verwendet, der einen eventuell längeren Übergabeprozess vermeidet, der in einer späteren Phase ohnehin scheitern würde, weil ein Anwender nicht die nötigen Rechte hat oder irgendwelche anderen Metadaten für die Übergabe nicht stimmen.

Falls der Hook start-commit einen Rückgabewert ungleich Null zurückgibt, wird der Übergabeprozess gestoppt, die Übergabetransaktion zerstört, und alles, was nach stderr ausgegeben wird, wird zurück zum Client umgeleitet.

Der Hook start-commit ist kein passender Ort, um den Inhalt einer bestimmten übergabe auszuwerten, da er aufgerufern wird, bevor irgendeine Information über die Änderung einer Datei oder eines Verzeichnisses übertragen wurde. Verwenden Sie zu diesem Zweck das Hook0Script pre-commit (welches in pre-commit an einer anderen Stelle dieser Referenz beschrieben wird).

[Anmerkung] Anmerkung

Vor Subversion 1.8 rief Subversion den Hook start-commit vor der Erstellung der Übergabetransaktion auf. Das Scheitern des Scriptes führte dazu, dass überhaupt keine Transaktion erstellt wurde. In Subversion 1.8 wurde das jedoch geändert, um Implementierungen des Hooks start-commit Zugriff auf die Eigenschaften der Transaktion zu ermöglichen, die (neben anderen Dingen) das zu der Übergabe gehörige Revisionsprotokoll beinhalten können.

Eingabeparameter

Die Kommandozeilenparameter, die an das Hook-Programm übergeben werden, sind in der gegebenen Reihenfolge:

  1. Projektarchiv-Pfad

  2. Authentifizierter Name des Benutzers, der die Übergabe versucht

  3. Eine durch Doppelpunkte getrennte Liste von Fähigkeiten, die der Client an den Server übergibt; dazu gehören depth, mergeinfo und log-revprops (neu in Subversion 1.5)

  4. Name der Übergabetransaktion (neu in Subversion 1.8)

Übliche Verwendung

Zugriffskontrolle (d.h., für das vorübergehende Sperren von Übergaben aus bestimmten Gründen).

Eine Methode, um den Zugriff nur Clients mit bestimmten Fähigkeiten zu ermöglichen.