想要将 GitHub 仓库的更新事件(如推送、分支创建等)自动通知到其他服务或执行自动化任务,GitHub Webhook 是一个非常好的工具。以下是如何配置 GitHub Webhook 的详细步骤。
步骤 1: 创建 Webhook
- 进入你想要配置 Webhook 的 GitHub 仓库。
- 点击左侧菜单栏的 "Settings"。
- 在 "Webhooks" 选项卡中,点击 "Add webhook"。
步骤 2: 配置 Webhook
- 在 "Payload URL" 中输入你的服务地址,例如:
/webhook
- 选择触发事件,例如:
Push event
。 - 点击 "Add webhook"。
步骤 3: 验证 Webhook
- 在 "Configure" 部分中,勾选 "Active" 选项。
- 在 "Secret" 中输入一个密钥,用于验证请求。
- 点击 "Save changes"。
步骤 4: 测试 Webhook
- 在 "Triggers" 部分,点击 "Test webhook"。
- 如果一切正常,你将在服务端收到一个 POST 请求。
示例:如何使用 Webhook
假设你想要在每次推送时,自动将代码同步到另一个 Git 仓库。以下是一个简单的示例:
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/webhook', methods=['POST'])
def webhook():
if request.headers.get('X-GitHub-Event') == 'push':
# 处理推送事件
print("Push event received!")
return jsonify({'status': 'success'})
else:
return jsonify({'status': 'error', 'message': 'Unsupported event type'})
if __name__ == '__main__':
app.run()
扩展阅读
想要了解更多关于 GitHub Webhook 的信息,可以访问 GitHub Webhook 官方文档。
[center][https://cloud-image.ullrai.com/q/GitHub_Webhook/](GitHub Webhook)[/center]