【问题标题】:how to use use-git hooks?如何使用 use-git 钩子?
【发布时间】:2014-05-19 19:19:47
【问题描述】:
【问题讨论】:
标签:
git
github
hook
issue-tracking
【解决方案1】:
git hook 只是一个 shell 脚本,在对 repo 执行操作时运行。
如果 shell 脚本返回 0,则没有错误,如果返回另一个数字,则遇到错误。如果钩子是pre-钩子,返回错误将阻止动作发生。发布发生在事件之后,如果他们失败,事件仍然发生。因此,如果您需要对提交消息进行处理,您可以阻止推送,但不能阻止提交。此外,如果您发现一个错误并想要对其进行修补,这会迫使您在提交之前创建一个问题。
困难的部分是弄清楚如何检查提交消息中是否有未解决的问题编号。您必须抓取 github 的站点或通过 api 解决问题。这可以在 shell 脚本中完成,但您最好编写一个小程序。
github 是一个互联网站点,它不是“在 Windows 上”。 git 钩子在它们关联的 repo 上执行,它们在 Windows、Mac 和 Linux 环境中工作。它们是 Windows 中的 bash 脚本,将在与 Windows Git 一起打包的 MingW Bash shell 中执行。
所以在 .git 文件中会有一个名为 hooks 的文件夹。在那里会有样本钩子。重命名删除 .sample 的文件之一(在提交后的情况下,没有示例文件,因此您只需在 hooks 目录中创建一个 post-commit 文件)。在文本编辑器中编辑它,并添加 shell 命令以执行您在命令行中执行的操作。 Shell 脚本是一个涉及大量文献的深奥主题。