我对将传统 SCM 产品(ClearCase、AccuRev、Perforce 等)与 Git 一起用于具有分布式团队的大型项目的价值(或缺乏价值)感兴趣。
在提高团队活动的可见性方面是否有显着的附加值?控制分支和合并?访问控制和安全?发布工程?其他因素?
还是单独使用 Git 更好?或者是否有与上述商业产品相当的开源 SCM?
谢谢。
我对将传统 SCM 产品(ClearCase、AccuRev、Perforce 等)与 Git 一起用于具有分布式团队的大型项目的价值(或缺乏价值)感兴趣。
在提高团队活动的可见性方面是否有显着的附加值?控制分支和合并?访问控制和安全?发布工程?其他因素?
还是单独使用 Git 更好?或者是否有与上述商业产品相当的开源 SCM?
谢谢。
使用尽可能少的系统。如果你没有看到单独使用 git 以外的任何东西的优势,那么就单独使用 git。
大多数项目只使用一个 VCS(例如 git 或 Subversion),并且可以做他们需要做的所有事情(分支,..),所以除非你有一个你知道不寻常的要求,你可以很确定一个产品会做所有事情你需要。
将 Git 与 ClearCase 或 SVN 集成不是我目前正在寻找的东西,主要是因为 Git 存储库无法保留与传统集中式存储库相同类型的数据(二进制文件)或卷(文件的数量/大小)。
请参阅“什么是 Git 限制? ”。
我现在正尝试在企业 ClearCase-SVN 环境中引入 Git,作为独立的替代方案。
虽然速度、私人提交和合并功能非常受欢迎,但我被要求解决以下方面的实际问题:
prereceive
挂钩,以便使用正确的配置进行至少一次提交user.name
(即 auser.name
等于cn
我们公司 LDAP 中的通用名称)。(有点像gitolite 脚本 ' contrib/update.email-check
',但用于user.name
,而不用于电子邮件)。简而言之,我仍然觉得 Git 更好,但由于我负责实施它的安装/管理,我完全同意我之前在 SO 问题“我们最终可以在企业软件中迁移到 DVCS 吗?SVN 仍然是一个”中所做的分析必须有'发展? ”;)。
有价值。
使用廉价本地分支的灵活性和便利性来促进本地(机器)环境中的开发人员工作流程,使用集中式系统轻松控制基于角色的权限和大量文件的聚合。
开发人员基于任务的分支保留在分布式系统中,并保持集中式历史更清晰。
集中式系统可用于从分布式系统中卸载大型二进制资产。
有成本。
支持/培训混合环境。
需要在系统之间定位/维护一个转换层。