【发布时间】:2017-06-20 03:18:49
【问题描述】:
当 git 上有提交时,我想自动在该特定分支上启动构建。
【问题讨论】:
标签: git jenkins build continuous-integration teamcity
当 git 上有提交时,我想自动在该特定分支上启动构建。
【问题讨论】:
标签: git jenkins build continuous-integration teamcity
有两种处理提交的方式——从 Git 服务器端和从客户端。 如果你想立即处理提交,你需要使用 GitHook。那是 Git 服务器在特殊事件(例如提交)上执行的代码。 那是从“服务器端”处理的。 缺点是您会增加构建队列的大小,这在您拥有活跃的开发和大型团队时至关重要。
从客户端(包括 TeamCity 和 Jenkins),除了轮询服务器进行更改之外,您别无选择。 缺点是您没有立即响应,但这是一个相对不利的方面(您实际上并不需要捕捉每秒所做的更改)。 优点是不会增加 Git 服务器的负载。
这是与 CI 系统无关的自然平衡。 Jenkins 和 TeamCity 的工作方式相同。
使用 CI 系统在每次提交后立即开始构建意味着频繁轮询。 这非常糟糕,因为 VCS(Git) 上的负载非常大。 相反,应该使用 GitHook。 这是对您问题的直接回答。
【讨论】: