2010-08-17 4 views

Antwort

1

Sie können SVN-Hooks von der Befehlszeile aus auf verschiedenen Ereignissen (vor und nach) verwenden, um Ihre benutzerdefinierten Skripts auszuführen.

Es scheint, dass es kein Hook für 'update' Event gibt, bitte sehen Sie here und sammeln Sie Details.

+3

TortoiseSVN ist keine "GUI-Ebene über Kern-SVN". TortoiseSVN ist eine unabhängig entwickelte App, die die veröffentlichten SVN-Bibliotheken nutzt. Es implementiert mehrere Features, die nicht in SVN.EXE sind, wie clientseitige Hook-Skripte (ein Beispiel). SVN-Hooks sind serverseitig. Sie werden nicht ausgeführt, wenn ein Benutzer SVN UPDATE für ihre lokale Arbeitskopie ausführt. –

+0

Hoppla !. Danke für die Information! – pavanlimo

+0

"Wenn die GUI unterstützt, muss die Kommandozeile!" - Wer hat diese Regel gemacht? –

7

In Bezug auf SVN: nicht sicher, ob dies helfen wird, aber wenn Sie TortoiseSVN verwenden, können Sie clientseitige Hook-Scripts verwenden:

Derzeit gibt es sechs Arten von Hook-Scripts zur Verfügung

Start begehen
Wird aufgerufen, bevor der Bestätigungsdialog angezeigt wird. Möglicherweise möchten Sie dies verwenden, wenn der Hook eine versionierte Datei ändert und sich auf die Liste der Dateien auswirkt, für die eine Commit- und/oder Commit-Nachricht erforderlich ist. Sie sollten jedoch beachten, dass die vollständige Liste der für die Festschreibung ausgewählten Objekte nicht verfügbar ist, da der Hook zu einem frühen Zeitpunkt aufgerufen wird.

Vorbesprechung
Wird aufgerufen, nachdem der Benutzer im Bestätigungsdialogfeld auf OK geklickt hat und bevor das eigentliche Festschreiben beginnt. Dieser Hook hat eine Liste von genau was begangen wird.

Nachbestellung
Wird aufgerufen, nachdem der Commit abgeschlossen ist (ob erfolgreich oder nicht).

Start-Update
Wird aufgerufen, bevor das Update-to-Revisions-Dialogfeld angezeigt wird.

Voraktualisierung
Wird aufgerufen, bevor das eigentliche Subversion-Update beginnt.

Nach dem Update
Wird aufgerufen, nachdem das Update abgeschlossen wurde (ob erfolgreich oder nicht).

Ein Hook ist für einen bestimmten Arbeitskopiepfad definiert. Sie müssen nur den Pfad auf oberster Ebene angeben. Wenn Sie eine Operation in einem Unterordner ausführen, sucht TortoiseSVN automatisch nach einem passenden Pfad.

Als nächstes müssen Sie die auszuführende Befehlszeile angeben, beginnend mit dem Pfad zum Hook-Skript oder der ausführbaren Datei. Dies kann eine Batchdatei, eine ausführbare Datei oder jede andere Datei sein, die eine gültige Windows-Dateizuordnung besitzt, z. ein Perl-Skript.

+0

Ich führe die update/pull-Befehle den Server über SSH und nicht TortoiseSVN - Ich würde einen Remote-Desktop dafür benötigen, um zu arbeiten. – Tower

Verwandte Themen