我对在大型项目中,使用传统的软件配置管理产品(ClearCase、AccuRev、Perforce等)以及Git与分布式团队合作的价值(或缺乏价值)感兴趣。
在增加团队活动的可见性方面,控制分支和合并方面,访问控制和安全方面,发布工程方面或其他因素方面有显著的附加价值吗?
还是仅使用Git更好?或者是否有一个开源的软件配置管理工具,可以与上述商业产品相当?
谢谢。
我对在大型项目中,使用传统的软件配置管理产品(ClearCase、AccuRev、Perforce等)以及Git与分布式团队合作的价值(或缺乏价值)感兴趣。
在增加团队活动的可见性方面,控制分支和合并方面,访问控制和安全方面,发布工程方面或其他因素方面有显著的附加价值吗?
还是仅使用Git更好?或者是否有一个开源的软件配置管理工具,可以与上述商业产品相当?
谢谢。
尽可能少使用系统。如果您认为除了git之外没有任何优势,那么就只使用git。
大多数项目仅使用一个版本控制系统(例如git或Subversion),并且可以完成所需的所有操作(分支等)。因此,除非您知道某些不寻常的要求,否则可以相当确定一个产品将满足您的所有需求。
我正在尝试在企业ClearCase-SVN环境中推广Git作为独立的替代方案。
虽然速度、私有提交和合并功能非常受欢迎,但我需要解决以下实际问题:
prereceive
钩子,以至少进行一次提交并使用正确的user.name
配置(即与我们公司LDAP中的通用名称cn
相等的user.name
)。 (有点像gitolite脚本'contrib/update.email-check
',但是针对的是user.name
,而不是电子邮件)。总之,我仍然认为Git更好,但由于我负责实施其安装/管理,我完全同意我之前在SO问题“企业软件中是否可以最终转向DVCS? SVN对于开发仍然是“必须拥有”的吗?”中所做的分析。;)。
有价值的内容。
利用本地分支的灵活性和便利性,促进开发人员在本地(机器)环境中的工作流程,使用集中式系统轻松控制基于角色的权限和大量文件的聚合。
开发人员任务分支保留在分布式系统中,使得集中式历史记录更加清晰。
可以使用集中式系统将大型二进制资产从分布式系统卸载。
有成本。
支持/培训混合环境。
需要定位/维护系统之间的翻译层。