2013-05-21 53 views
1

我有一位客户对使用Clearcase非常坚持。是否有任何工具/脚本可以让我的团队导入SVN项目?我的团队项目实际上将在SVN中......。如何将SVN项目导入Clearcase?将SVN项目导入到ClearCase中

谢谢

回答

1

technote确实提到:

ClearCase中并没有提供从Subversion导入保持版本历史记录的工具。

如果你不感兴趣的维护版本历史记录和仅仅希望从最新版本或预选配置启动,您可以使用clearfsimport命令。有关更多信息,请查看有关clearfsimport (cleartool man clearfsimport)主题的“ClearCase命令参考指南”。

如果您需要的版本历史,你可能要评估开源工具svn2cc

该项目可能会过时,但在this thread详述:

该实用程序是在一个两个方面

  • 拳头是创造了一系列需要批处理文件在实用程序运行后执行。批处理文件在执行时会将源文件插入到CC中。
  • 第二个是直接从实用程序插入记录到CC。您可以选择最适合您的项目。

的SVN转储文件包含了所有你需要的数据。包括源文件及其相关的元数据(历史,作者等)。您的SVN管理员将能够为您生成转储文件。


GitHub script说明了 “简单” 的方法(clearfsimport),让您可以导入你提到一个接一个连续的SVN版本:

@echo off 

SET CC_VOB_DIR= 
SET CC_VIEW_TAG= 
SET CC_COMPONENT_NAME= 
SET CC_VOB_NAME= 
SET TMP_SVN_EXPORT_DIR= 
SET SVN_URL= 

@echo deleting directory %TMP_SVN_EXPORT_DIR% 

rd /S /Q %TMP_SVN_EXPORT_DIR% 
svn export %SVN_URL% %TMP_SVN_EXPORT_DIR% --force 
clearfsimport -nsetevent -recurse -rmname %TMP_SVN_EXPORT_DIR% %CC_VOB_DIR% 

IF %1==-b (
cleartool mkbl -view %CC_VIEW_TAG% -full -component %CC_COMPONENT_NAME%@\%CC_VOB_NAME% %CC_COMPONENT_NAME% 
) 

这类似于this thread answer

我做的是拿出代表里程碑SVN标记列表的方式建立或释放,然后导入这些旧到最新的,建立一个版本的历史,有时甚至在这个过程中的几个分支。
取决于如何“结构化”您的CVS或SVN或....存储库,进口一切通常会导致非常糟糕的版本树。我只有一个例子,他们非常关注cvs分支,在这些分支中export/import没有大惊小怪,结果是你可以并且想要在CC中使用的东西。

所以花一些时间来分析你的svn库,它会如何转化为CC分支机构和识别标签和创建CC配置规格和clearfsimport最旧到最新。