我正在努力建立一个源代码控制解决方案,该解决方案将允许多个供应商为单个项目做出贡献(单个安装中的多个 Sitecore CMS 站点)。理想情况下,我们希望使用 TFS,因为它似乎最符合我们的内部要求并提供最佳支持。然而,我们的一些供应商更喜欢 SVN。如果我们选择使用 TFS,似乎有许多可能的解决方案。
1) 供应商承诺直接使用 TFS,使用 MS 工具和 CAL(例如用于后端开发的 Visual Studio 和用于前端的 tfs.exe 等)。
2) 供应商使用 TFS,插入并适配到他们当前的 SVN 工具(SVN Bridge / SVN Tortoise)——每个开发人员仍然需要一个 CAL。
3) 供应商使用单个 CAL 从 TFS 建立代码库,然后将其用作 SVN 存储库。供应商在本地使用 SVN,但使用 SVN 存储库和 TFS 之间的持续集成来保持同步。
第三种选择在许可条款上看起来更便宜,但会在同步中增加相当大的复杂性和开发人员时间,并且可能会丢失每个开发人员的签入信息(单个开发人员会签入他的团队对 TFS 的所有更改) .
我们实际上不需要大量的细节和复杂性,只需要基本的功能。供应商对他们的团队负责,我们甚至不需要知道谁在那个级别做了什么,只要它来自供应商 A 或供应商 B。
上述方法的相对缺点和优点是什么,哪些工具可以让我的生活更轻松?