2017-12-08 7 views
0

Ich versuche, den Repo Push in Bitbucket zu stoppen, wenn die Commit-Anweisung nicht die definierte Jira Problem ID in der Bemerkung hat. Ich habe erfolgreich die URL aufgerufen, um die Commit-Bemerkung über Webhooks zu überprüfen, aber ich konnte nicht herausfinden, wie ich den Push im Falle eines Fehlers stoppen kann.Wie Repo zu stoppen: Push, wenn Webhooks Bedingung in BitBucket fehlschlägt

+0

kopieren müssen Sie nicht auf den Druck stoppen kann, wenn es auf bitbucket ist, stattdessen müssen Sie ihn stoppen, bevor es zu Bitbucket bekommt. Siehe @ EdmundDipples Antwort. – evolutionxbox

+0

Ja, @evolutionxbox wollte ich verhindern, dass es vor bitbucket kommt. –

Antwort

0

Passen Sie das folgende Skript aus diesem Beispiel eines msg-commit Git Hook.

#!/bin/bash 

MSG="$1" 

if ! grep -qE "updated" "$MSG";then 
    cat "$MSG" 
    echo "Your commit message must contain the word 'updated'" 
    exit 1 
fi 

Überprüfen Sie diesen Code in git, und dann

# give the script "execute" permission 
chmod 755 commit-msg 
# put the script in the correct place 
cp commit-msg .git/hooks/commit-msg 

laufen Wenn Sie ohne das Wort ein Commit versuchen und schaffen ‚aktualisiert‘ in der Nachricht, dann wird dieser Haken aus dem Commit verhindern erstellt werden erfolgreich.

Quelle: https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks

Der commit-msg hook nimmt einen Parameter, der wiederum ist der Weg in eine temporäre Datei, die die Nachricht vom Entwickler geschrieben begehen enthält. Wenn dieses Skript einen Wert ungleich Null aufweist, bricht Git den Festschreibungsprozess ab, sodass Sie es verwenden können, um den Projektstatus oder die Festschreibungsnachricht zu überprüfen, bevor Sie eine Festschreibung zulassen. Im letzten Abschnitt dieses Kapitels demonstrieren wir anhand dieses Hooks, ob Ihre Commit-Nachricht einem erforderlichen Muster entspricht.

Beachten Sie, dass alle anderen, die das Repository klont auch den Haken in .git/hooks/commit-msg

Verwandte Themen