Svn ClearCase是否适合我们的开发过程?
那么,让我描述一下我们目前的情况。我们是一个由经验丰富的Java开发人员组成的小型团队(6),在一个由SAP和Siebel Configurator组成的大型IS团队中迷失了方向。Svn ClearCase是否适合我们的开发过程?,svn,process,clearcase,Svn,Process,Clearcase,那么,让我描述一下我们目前的情况。我们是一个由经验丰富的Java开发人员组成的小型团队(6),在一个由SAP和Siebel Configurator组成的大型IS团队中迷失了方向。 虽然所有其他团队目前都在使用VSS,主要是作为一个保险存储系统,但我们的团队已经切换到Subversion(在评估DVCS之后),因为它最适合我们的敏捷方法 现在,每个人都被要求迁移到ClearCase,所有迁移工作都放在VSS用户身上,因为他们是用户中最大的一部分。 由于我们只能靠自己,不知道真正的ClearCas
虽然所有其他团队目前都在使用VSS,主要是作为一个保险存储系统,但我们的团队已经切换到Subversion(在评估DVCS之后),因为它最适合我们的敏捷方法 现在,每个人都被要求迁移到ClearCase,所有迁移工作都放在VSS用户身上,因为他们是用户中最大的一部分。
由于我们只能靠自己,不知道真正的ClearCase,我们担心它不适合我们当前的工作流程 以下是我们目前每天的工作方式:
- SVN存储库遵循/trunk、/branchs、/tags结构
- 每个开发人员在存储库中都有自己的沙箱,用于测试和原型设计
- 我们集中使用分支来开发新特性,并将它们合并在一起,在将它们提升回主干之前进行一些集成测试
- 在Java中工作时,我们习惯于进行重构,Eclipse对此有很大帮助。每天都有很多类和包重命名
- 根据项目的发展情况,某些部分可能会被重用,从而导致一个项目在多个项目中被拆分,原始部分仍然通过svn:external属性进行集成
- 我们使用关键字替换某些元素,因为这是一种非常简单的方法,可以让测试人员知道他正在测试的修订版本
- 我们的Subversion存储库链接到Hudson以运行测试套件,并通过标记它们来提升有效的构建
谢谢。clearcase是我所知道的最强大的版本控制系统。所有枚举任务都受支持。首先,这里是一些关于ClearCase的文章:
- CCRC是指“web视图”,即ClearCase专用web服务器上的快照视图。。。你最好在你的桌面和服务器之间有一个好的局域网
- 分支是ClearCase中的一级公民,这意味着一个给定的ClearCase视图(这里是快照ccweb视图)将只允许您访问一个分支。如果您习惯于同时处理多个分支,则需要多个视图
- 所有操作都是每个文件一个文件的,因此在私有分支上工作然后合并的想法很麻烦,因为涉及的合并数量太多。
我强烈建议为几个开发人员想要解决的特定开发工作开发一个公共分支。
如果他们想要私有分支和沙箱,他们可以毫无问题地设置一个 (注意:快照视图不能被视为沙盒:当您签入文件时,其他所有开发人员在更新快照视图时都会看到您的更改) - 确实支持重构
- 除了通过链接之外,在ClearCase中并不真正支持svn:external的概念。或者通过UCM基线依赖项。
您应该知道,使用二进制文件依赖项比使用源代码依赖项更容易:如果您的外部应用程序用于包含下一个项目的数千个源文件,那么在ClearCase中它将很麻烦(由于长时间的更新)。如果您包含一些jar或dll,那么速度会快得多(加上那些将实际部署的jar或dll) - 如果使用UCM,则无法将代码从一个组件移动到另一个组件。您必须在新标识的“通用”组件中添加主标签
- 注:RCS关键字替换为;)我建议使用一个单独的文本文件,其中包含相关重要文件的版本或标签。这适用于交付材料,而不是源文件