ukoasis blog

gitコマンドを拡張してみる

Nov 10, 2013

localのサーバに建てたJenkinsをgithubにpushしたタイミングでbuildしたい!と考えたのだけど、gitのhookにはpushの時のhookがなさそう・・

http://git-scm.com/book/en/Customizing-Git-Git-Hooks

ということで探していたら以下の記事を発見し、なんとも簡単に拡張ができるんですね!git素晴らしい〜!ということで以下の様な追加でとりあえず目的は果たせました

http://d.hatena.ne.jp/hokaccha/20110808/1312780876

手順

pushとJenkinsのbuild用のAPIを叩くスクリプトを用意

vim /usr/local/bin/git-pushandbuild
-----
#!/bin/sh

JOB_NAME=$1

git hf push
curl -S http://<JenkinsURL>/job/${JOB_NAME}/build/api/?delay=0sec

hubflowを使っているので普通のpushの場合は適当に変更

scriptに実行権限を追加

chmod +x /usr/local/bin/git-pushandbuild

長ったらしいのでaliasに追加

git config --global alias.pb pushandbuild

後はpushするだけ

git pb HOGE

とりあえずの目的は果たせたがなんかもうちょっとうまいこと出来そうな気がする。ので、引き続き色々模索していきます。

参考にさせていただいたサイト

http://git-scm.com/book/en/Customizing-Git-Git-Hooks http://d.hatena.ne.jp/hokaccha/20110808/1312780876