1

我们正在寻找一种在推送变基时从命令行禁用 GitHub Webhook 的方法,以防止 Pivotal Tracker 中出现重复条目​​。

以前有没有人实施过这个?它看起来git push --no-verify不会起作用,因为我相信 GitHub 中的 webhook 是post-receive.

4

1 回答 1

0

假设您的问题是接收后挂钩是正确的,我认为您无法根据 git 手册页将其标记出来:

接收后

这个钩子由远程存储库上的 git-receive-pack 调用,当在本地存储库上完成 git push 时会发生这种情况。在所有 refs 都更新后,它会在远程存储库上执行一次。

该钩子为接收操作执行一次。它不接受任何参数,但获得的信息与 pre-receive 挂钩在其标准输入上所做的信息相同。

这个钩子不会影响 git-receive-pack 的结果,因为它是在实际工作完成后调用的。

这取代了 post-update 钩子,因为它获取所有 ref 的旧值和新值以及它们的名称。

标准输出和标准错误输出都转发到另一端的 git send-pack,因此您可以简单地为用户回显消息。

默认的 post-receive 钩子是空的,但在 Git 发行版的 contrib/hooks 目录中提供了一个示例脚本 post-receive-email,它实现了发送提交电子邮件。

这是您可以做到这一点的一种方法。如果您想跳过 post-receive 挂钩,请使用您在 bash 中定义的自定义方法:

  1. 将 .git/hooks/post-receive 移动到其他文件名
  2. 你的推
  3. 将 .git/hooks/some_other_file_name 移回 .git/hooks/post-receive
于 2015-12-17T21:19:49.477 回答