我知道Webhooks用于触发托管git存储库中的服务器端操作,并且CI / CD表示托管git存储库的持续集成和持续部署/交付,但是主要区别是什么,尤其是当它们都由GitLab或GitHub等单一git托管服务提供商提供? (对于GitLab,它们指的是Webhooks和CI / CD,而对于GitHub,则指的是Webhooks和GitHub Actions。)
文档模糊地详细说明了Webhooks的功能以及如何用于触发CI / CD,但是与此同时,即使没有将显式的Webhook添加到git存储库中,供应商提供的CI / CD也可以正常运行。这是否意味着对于每个使用供应商提供的CI / CD的托管git存储库,幕后都有一个Webhook?
我从上面的理解是,显式的Webhooks(与底层的相反)可用于触发第三方CI / CD,而git托管服务提供商的CI / CD则是由同一方托管并运行的。这是正确的吗?
非常感谢任何发布答案的人。
答案 0 :(得分:2)
Webhooks和CI / CD是您经常一起使用的两种不同技术。
设置Webhooks可以将数据实时发布到使用的应用程序。 Webhooks通常发布到URL端点,该端点被设置为接受来自它的信息。在CI的情况下,这可能是一个Webhook,可在提交发生时发布有关提交的信息。有关更多信息,请参见此处-https://codeburst.io/what-are-webhooks-b04ec2bf9ca2
CI / CD的存在是为了自动化软件的部署和构建。一种常见的用法是为可能需要的不同环境构建软件。开发,分期,生产。流行的CI工具是Team City-https://www.jetbrains.com/teamcity/
重申一下,网络钩子并没有试图解决与CI / CD相同的问题,但是它们确实扩展了它可以执行的功能。