【发布时间】:2011-04-06 17:01:53
【问题描述】:
我可以在某处看到一个示例 post-commit 挂钩以在每个提交的文件上运行脚本吗?
例如。
git add file1
git add file2
git commit -am "my commit"
然后钩子执行:
myscript -myparams "file1"
myscript -myparams "file2"
最好有参数来提交命令来运行这个钩子,例如。 git commit -X… 执行这个 post commit hook。最终是像git-commitx 这样的别名。
与索引中文件的预提交挂钩相同的版本怎么样?当其中一个文件的脚本执行失败时,我可以中止提交吗?
编辑:
这是我现在拥有的:
#!/bin/sh
#.git/hooks/post-commit
dir=`pwd`
echo ----------------------------------------------
echo PHP Mess Detector results for commited files:
echo ----------------------------------------------
git show --pretty="format:" --name-only | grep '\.php$' | xargs -i phpmd $dir/'{}' text codesize,unused$
echo ----------------------------------------------
【问题讨论】:
标签: git bash scripting githooks