我正在帮助为一个新项目设置SCM,我们目前正在决定使用哪个版本控制系统(VCS)。
目前的主要竞争者是SVN、ClearCase、SVN+DVCS和仅使用DVCS。
目前,团队倾向于使用SVN或SVN+DVCS。我们想避免ClearCase的开销和管理成本,但需要它提供的工作流程和版本控制选项。我也提出了使用DVCS的选项,这个想法正在被考虑。
对于DVCS,我们正在考虑Mercurial、Bazaar和Git。团队感到很舒适使用SVN,但不认为它会提供所需的多样性,这就是为什么我们正在考虑在SVN之上使用DVCS的选项。
有人对如何实现这样的设置有什么建议吗?(例如现有的工具、过程)
一些关注点包括:
- 安装容易 - 建立工作流程(开发 <-> 代码评审 -> 测试 -> 主干,然后主干 -> 集成测试分支 -> 发布,并把修复错误放入发布分支)、审计(找到一个bug,何时引入的) - 生产度量数据 - 对使用ClearCase的开发人员来说,合理的学习曲线。 - Windows开发 - 集成问题跟踪(可能会使用Redmine,尽管这还没有最终确定)。
目前的主要竞争者是SVN、ClearCase、SVN+DVCS和仅使用DVCS。
目前,团队倾向于使用SVN或SVN+DVCS。我们想避免ClearCase的开销和管理成本,但需要它提供的工作流程和版本控制选项。我也提出了使用DVCS的选项,这个想法正在被考虑。
对于DVCS,我们正在考虑Mercurial、Bazaar和Git。团队感到很舒适使用SVN,但不认为它会提供所需的多样性,这就是为什么我们正在考虑在SVN之上使用DVCS的选项。
有人对如何实现这样的设置有什么建议吗?(例如现有的工具、过程)
一些关注点包括:
- 安装容易 - 建立工作流程(开发 <-> 代码评审 -> 测试 -> 主干,然后主干 -> 集成测试分支 -> 发布,并把修复错误放入发布分支)、审计(找到一个bug,何时引入的) - 生产度量数据 - 对使用ClearCase的开发人员来说,合理的学习曲线。 - Windows开发 - 集成问题跟踪(可能会使用Redmine,尽管这还没有最终确定)。