読者です 読者をやめる 読者になる 読者になる

Git hooks を python でつかう

普通はシェルスクリプトでやるのだろうが、python で Git hooks をつかうことができる。 ここでは、例として特定のファイルの文字数をコミット後に数えるというのをやってみる。 .git/hooks/post-commit を以下のように作成した。

#!/usr/bin/env python3

import time

with open(’hoge.txt', 'r') as fi:
    s = fi.read()

with open('progress.txt', 'a') as fo:
    out = '{0:d} {1:d}\n'.format(round(time.time()), len(s))
    fo.write(out)

git commit すると、タイムスタンプと文字数が記録されていく。