我问这个问题,因为我发现社区对各种构建引擎(如MSBuild和NAnt)的贡献确实包括了为CI服务器推广的所有任务,比如从源代码控制获取版本,清理文件夹,更改构建号,发送电子邮件等......
仅仅因为它“监听”源控制存储库中发生的更改吗?我还缺少什么?
答案 0 :(得分:6)
Grzegorz Oledzki找到了一个很好的资源来找到多个CI解决方案之间的差异,但应该注意的是,MSBuild的目的是专门将代码转换为二进制,并由CI软件用于构建源代码。确实,它可以做其他事情,但其大部分任务都在这个领域内。
除了你提到的关于收听回购的内容之外,一些CI服务器可以做各种各样的事情,比如^ 1:
通常所有这些都来自方便的用户界面。
1并非所有CI软件都具备所有这些功能,但这绝不是详尽无遗的,并且存在一些重叠。
答案 1 :(得分:2)
我相信CI (Continuous Integration) feature matrix会回答您关于特定CI提供商及其功能的所有问题。
答案 2 :(得分:1)
我强烈建议使用CI服务器,但我更喜欢将所有构建逻辑保留在MSBuild文件中,以及CI服务器中失败时通知的所有人员等。保持构建文件中的逻辑可帮助您在自己的计算机上重现构建,并使在CI服务器中设置新项目或更改CI服务器构建项目的方式变得简单