每当我执行git commit -m "msg"
并将提交日志写入php文件时,我就会运行此shell脚本。我希望它包含我当时正在做的当前提交消息。
我的shell脚本:
#!/bin/sh
path="path/to/gitlog.php"
echo "<?php $git_log = array(" > $path
git log --date=iso --pretty=format:'array("%h","%an","%ad","%s"),' >> $path
echo ");" >> $path
gitlog.php会保存到我的存储库,然后我会git push
。
我目前在'pre-commit'钩子中有它,有没有办法在这个钩子中获取提交消息?
我的用例
我是该项目中唯一的开发人员。时间很短!对于参与项目的其他人来说,看到进度并阅读描述性提交日志,而不必花费我不得不加倍的开销。日志输出到每个人都可以访问的仪表板。
Git没有在仪表板服务器上运行,文件是从存储库托管公司(Beanstalk)部署的
答案 0 :(得分:1)
另一种选择可能是创建一个适当的挂钩,将更改日志写入外部您的仓库中的文件,然后将该文件推送到外部用户可访问的位置。然后不需要提交更改日志,这是问题的原因。
答案 1 :(得分:0)
根据您的使用案例,我建议:
将本地计算机上的pre-commit
挂钩移动到仪表板服务器上的post-checkout
挂钩(我想在该仪表板站点后面有一个repo的克隆?)