5

毫无疑问,使用 dvcs 有很多优势,它可以像集中式 vcs 一样使用,但是是否有本地提交并且能够非常轻松地为一些较小的团队分叉项目,这使得支持持续集成变得更加困难?它有助于开发,每个人都可以访问最新的更改,这些更改由 CI 服务器测试,因此可以最大限度地减少不兼容更改的可能性。

4

2 回答 2

6

您可以集中 DVCS。DVCS 和集中式的区别在于,使用 DVCS,您不必集中它。

您可以拥有一个中央存储库,每个人都可以在其中推送更改,并且每个人都可以从中提取最新代码。您可以在服务器上编写一个提交挂钩,以便每次有人推送代码时,它都会运行测试以确保它通过测试。这就像集中式版本控制,只是更好,因为我可以在准备推送到中央服务器之前创建一个本地分支并进行多次本地提交。

你有没有做过一个大的改变,破坏了很多东西,并且想要做几个提交,但在你完成并且一切都再次修复之前不要分享它们?这就是 DVCS 让一切变得简单的原因。

于 2009-05-28T21:14:10.060 回答
0

它确实使执行 CI 变得更加困难,因为源代码控制系统鼓励您不要持续集成。但是,绝对没有什么可以阻止您定期集成到中央存储库中。团队只需要对此保持自律。

在较小的团队分叉项目并暂时做自己的事情的情况下,您也应该针对该分叉进行持续集成构建,并可能在两个分叉之间建立定期集成。

这类似于 Accurev 推动的基于流的多阶段持续集成策略:
http ://www.accurev.com/multistage-continuous-integration.html

于 2009-05-29T11:51:01.463 回答