[Geloest] Git push notify script

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

[Geloest] Git push notify script

Beitrag von Lord_Carlos » 14.12.2009 19:07:06

Tag

Ich moechte das mein IRC bot immer berichtet wenn in meinem Git repo jemand was pushed.
Wie ich eine Nachricht zum IRC bot sende weis ich selber, aber wie ich erstmal diese Nachricht erstelle weis ich nicht.

Soviel ich weis muss ich ein script in .git/hooks schreiben und ausführbar machen.
Die Nachricht sollte ca. so aussehen "New commit from $user: $commit_Kommentar"
Das wird dann an netcat gepiped, und von da aus weiter an meinen Bot.

Jemand eine Idee wie diese hook datei aussehen soll?

Mfg
lord-carlos

Edit:
Bin ein kleinen tik weiter.
Habe jetzt was in die post-receive reingeschrieben:
echo "new commit" | netcat XXXXXXXXX XXXX

Geht auch, aber wie finde ich jetzt heraus wer was comittet hat?

##### EDIT2 #####
Jetzt geht es, war aber nicht so einfach. Und mein Bot kann auch nur eine zeile zur zeit verarbeiten ^^

Code: Alles auswählen

while read old new ref;
do
        echo "New commit in git Repo: $ref:" |netcat 81.89.108.201 6789;
        git --no-pager shortlog $old..$new | awk 'NR > 1 && /feature/{print ""}
                /--/{next}
                {printf $0}
                END{print ""}' - | netcat XXXXXXXX XXXX;
done

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Antworten