Clearcase to Gitclearcase 仓库导到 Git 的工具

联合创作 · 2023-10-01 06:01

这是一个 C# 开发的工具,用于从 clearcase 中提取相关元数据(并保存该表示形式),然后构建改进记录集,并将其输出到 git-fast-import。

实际使用的样例请看scripts目录

一般原则 :

  • 尽可能使用导出clearexport_ccase(由于的内存限制,分几部分clearexport_ccase
  • 获取所有元素(文件和目录)
  • (可选)编辑这些列表以排除不感兴趣的列表
  • 使用GitImporter(调用cleartool)创建(并保存)Vob的表示
  • 使用GitImporter和导入git fast-importcleartool然后仅用于获取文件的内容
FOR /D %D in (*) DO clearexport_ccase -r -o %D.export %D

cleartool find -all -type d -print >directories.lst
cleartool find -all -type f -print >files.lst

GitImporter -S:vobDB.bin -E:files.lst -D:directories.lst -G -C:M:\MyView\MyVob *.export

GitImporter -L:vobDB.bin -C:M:\MyView\MyVob | git fast-import

第三方

支持使用特定配置文件将第三方作为git子模块处理。

假设有一个特殊的文件存储了clearcase config-spec,其中包含一些目录的标签规则。然后,对于此文件的每个新版本,如果找到目录和标签的匹配项,则将引用子模块的相应提交。

就第三方而言,我改为使用基于NuGet的解决方案,但旧的提交仍引用子模块。

浏览 1
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报