所以,这次是相反的方式 - 我需要将基于SVN的项目迁移到ClearCase中.是否有任何工具可以让这个过程变得更容易(而不是整理一个自定义脚本),有没有任何有过这方面经验的人的陷阱?
谢谢!
如此处所述(ibm)并且在此线程中,没有直接工具将SVN数据导入ClearCase.
这意味着自定义脚本您的工作空间SVN设置相关的里程碑,然后clearfsimport那些与一个"正确"的配置规格(即"配置规范")ClearCase视图.
在适当的情况下,我的意思是ClearCase视图将位于"分支目录"中的Subversion文件的不同副本导入相关的ClearCase分支.然后在ClearCase导入视图中以正确的顺序导入"标签"(仍然在SVN仓库中复制),并在该类导入后立即设置标签.
所以主要的'陷阱'是盲目地导入所有SVN结构:这将导致实际的目录在ClearCase中根本不应该存在,因为分支和标签是使用这个工具的一等公民,而不是'廉价拷贝'像在SVN.
一个好的脚本开始(并且当然适应)将是svn2git,它检测SVN分支和标记,并尝试将这些'目录'的内容导入git,(但也可以将它们导入ClearCase,通过右边系统调用'clearfsimport'命令').
由于单个修订版的导入可能相当长,因此一种现实的方法是将脚本限制为仅导入:
导入分支时,这意味着创建brtype,然后设置标签(起点),最后更改配置规范以获得以下选择规则:
element * .../svnBranch
element * STARTING_LABEL -mkbranch svnBranch
element /main/0 -mkbranch svnBranch
Run Code Online (Sandbox Code Playgroud)
重要的是在没有SVN中存在的表示分支和标记的目录的情况下得到最终结果.
从那里,您将能够将主目录移动/重命名为您想要的任何结构,例如适合UCM组件声明的结构(如果您想使用UCM).