Verhindern, dass ein Git-Branch gepusht wird

Letzte Änderung am 28. Dezember 2021 by Christoph Jüngling

Manchmal will man nicht, dass ein Branch auf den Server gepusht wird, auch nicht versehentlich. Denkbar sind zum Beispiel Bugfix- oder Feature-Branches, die für die lokale Entwicklung gedacht sind, aber vor Fertigstellung nichts “in the wild” zu suchen haben, weil sie über kurz oder lang sowieso wieder gelöscht werden. Das versehentliche Pushen kann man mit einem „Pre-Push-Hook“ verhindern.

Das folgende Script prüft, ob das Wort “development” im Branchnamen, der gerade gepusht werden soll, vorhanden ist. Falls ja, wird eine Meldung ausgegeben und ein Fehlerstatus gesetzt:

#!/bin/sh

if [[ `grep 'development'` ]]; then
    echo "Dieser Branch soll lokal bleiben!"
    exit 1
fi

Kopiere den Text in eine Datei und speichere sie im Verzeichnis .git/hooks/pre-push. Beim nächsten Push-Versuch auf einem development-Branch sollte eine entsprechende Meldung erscheinen und der Push verweigert werden.

Das Beispiel habe ich irgendwo aus dem Internet, und wenn man die erste Zeile nicht vergisst, funktioniert es auch :-)

git.exe push --set-upstream --progress "origin" development
Dieser Branch soll lokal bleiben!
error: failed to push some refs to 'git@gitlab.com:vde-group/vde-pruefung.git'

git did not exit cleanly (exit code 1)

Ähnliche Artikel:

Schreibe einen Kommentar

Deine Email-Adresse wird nicht veröffentlicht.

acht + 3 =