[How To] Hooks in Git

  • Hi,


    hatte diesen Guide schon mal in einem amerikanischen Forum geposted, aber ich denke, dass diese Methode ziemlich nützlich sein kann.



    Einleitung

    Wie viele andere Versionskontrollsysteme bietet Git auch eine Methode an, um eigene Scripts bei pre-triggered actions auszuführen.
    Dies wird "Hooks" genannt.
    Es gibt zwei Arten von Hooks: client-side und server-side
    Die trigger für die client-side Hooks sind z.B. commit, merge, push, etc
    Die trigger für die server-side Hooks sind pre-receive, update und post-receive



    Client-side Hooks

    Die client-side hooks werden im .git/hooks Ordner gespeichert.
    Wenn ein neues Repository initialisiert wird, werden einige Beispiel-Scripts erstellt, welche so genutzt oder angepasst werden können.
    Die Beispiel-Scripts sind shell Scripts, jedoch könnt ihr jede ausführbare Sprache nutzen (z.B. Python oder C++).
    Um die Scripts nutzen zu können, muss lediglich die file extension "sample" entfernt werden - die Namen müssen für die Erkennung erhalten bleiben.



    Ein kleines Beispiel für eine commit message:


    Shell-Script
    1. #!/bin/sh
    2. echo "# test message #"

    Wie es dann in der Konsole aussieht:


    Bitte melden Sie sich an, um dieses Bild zu sehen.


    Die Befehls-Parameter werden in den Standard-Parametern der jeweiligen Sprache gespeichert (Parameter der main-Funktionen).



    Server-side Hooks

    Server-side Hooks funktionieren wie Client-side Hook.
    Jedoch müssen sie im Remote-Repository festgelegt werden.




    Schlusswort


    Falls ihr noch mehr zu diesem Thema durchlesen wollt, empfehle ich euch diesen Link: Bitte melden Sie sich an, um diesen Link zu sehen.


    MfG Remix