2016-05-12 8 views
0

alle Ich benutze Gerrit 2.12.2, ich installiere es auf meinem Ubuntu-14.04, Nach der Konfiguration möchte ich ein Testprojekt machen. Das Push-to-remote-Verfahren muss commit-msg hook sein, um Commit-IDs automatisch zu generieren. Aber ich kann das Hook-Verzeichnis auf dem Gerrit-Server nicht finden.Warum hat mein Gerrit kein Hook-Unterverzeichnis?

enter image description here

Warum gibt es kein Verzeichnis mit dem Namen Haken? und wie bekomme ich das commit-msg hook script?

Antwort

0

Es ist mein Verständnis von this, dass Change-Ids zur Commit-Zeit auf der Client-Seite erstellt werden, so dass kein Haken auf dem Server sein sollte.

+0

aber einige Online-Auflösung von Change-ID für Gerrit ist 'scp' der 'commit-msg' Hook zu local von Gerrit-Server. –

0

Gelöst.

Das Skript commit-msg hook wird nicht vom gerrit-Installationspfad heruntergeladen. Es kann mit der URL heruntergeladen werden, die aus Gerrit-Site-Basis und "/ tools/hooks/commit-msg" besteht. Also, wenn Ihr gerrit Site-Pfad http://192.168.1.2 ist, können Sie diesen Haken bekommen mit

wget http://192.168.1.2/tools/hooks/commit-msg 
+0

Sie müssen es nicht konstruieren. Wenn Sie versuchen, einen Commit ohne Change-ID an den Gerrit zu senden, wird Ihnen der gesamte Befehl angezeigt, den Sie ausführen müssen, um den Hook einschließlich der URL zu erhalten. – fracz

0

Dies ist der vollständige Befehl ist die Commit-msg Haken in einem lokalen Repository zu installieren:

gitdir=$(git rev-parse --git-dir); curl --create-dirs -Lo ${gitdir}/hooks/commit-msg https://<gerrit-server>/tools/hooks/commit-msg; chmod u+x ${gitdir}/hooks/commit-msg 
Verwandte Themen