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.
start-commit — Ankündigung des Beginns einer Übergabe.
start-commit
REPOS-PATH
USER
CAPABILITIES
TXN-NAME
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 | |
---|---|
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. |
Die Kommandozeilenparameter, die an das Hook-Programm übergeben werden, sind in der gegebenen Reihenfolge:
Projektarchiv-Pfad
Authentifizierter Name des Benutzers, der die Übergabe versucht
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)
Name der Übergabetransaktion (neu in Subversion 1.8)