同步GIT和ClearCase

同步GIT和ClearCase,git,clearcase,git-branch,Git,Clearcase,Git Branch,我目前正在处理ClearCase,现在正在迁移到GIT。 但我们需要这种迁移,所有工作都将在GIT中完成,数据将同步到ClearCase流。GIT和CC中的分支名和流名都相同,所以脚本编写应该不会有问题。问题是, 有人能建议哪种模式是同步CC和GIT的最佳模式吗 将CC中的所有VOB作为GIT中的单个回购,并将CC中的主流作为GIT中的各个分支。-单一GIT回购(VOB)和多个分支(CC流)。-这占用更少的空间,因为VOB作为具有多个分支的单一回购协议保存 将重要的CC分支作为独立的GIT存储库

我目前正在处理ClearCase,现在正在迁移到GIT。 但我们需要这种迁移,所有工作都将在GIT中完成,数据将同步到ClearCase流。GIT和CC中的分支名和流名都相同,所以脚本编写应该不会有问题。问题是,

有人能建议哪种模式是同步CC和GIT的最佳模式吗

  • 将CC中的所有VOB作为GIT中的单个回购,并将CC中的主流作为GIT中的各个分支。-单一GIT回购(VOB)和多个分支(CC流)。-这占用更少的空间,因为VOB作为具有多个分支的单一回购协议保存

  • 将重要的CC分支作为独立的GIT存储库,每个存储库都有所有CC VOB。-许多CC分支的许多GIT repo—这将占用大量空间,因为VOB将跨多个分支进行复制


  • 关于分支机构和回购,您认为哪一种方法是使其与ClearCase保持同步的最佳方法?我将使用一个vob==一个git回购规则,因为git回购实际上是由单个项目使用的,与vob使用的方法相同

    对于分支机构,VOB/REPO的分支机构名称应匹配。看看git中的子模块,看看是否可以在您的案例中使用它

    我个人希望看到的是一个成熟的git cc后端,这将允许我在我的开发设备上使用git,同时能够与我被迫使用的公司cc存储库同步

    将CC中的所有VOB作为GIT中的单个回购,并将CC中的主流作为GIT中的各个分支

    不,是的

    将重要的CC分支作为独立的GIT存储库,每个存储库都有所有的CC VOB

    不,不

    再读一遍,你不应该试图把“一切”都塞进Git回购协议中。
    有关ClearCase和Git之间的比较,请参见“”

    流可以安全地作为分支导入。
    但VOB不一定是Git回购

    如果您使用的是UCM,我建议每个UCM组件使用一个Git repo

    无论如何,您需要在您的Git Repo中记录一种方式,以了解使用哪个ClearCase视图(通过a)同步回您的数据。
    用于ClearCase数据重新导入的视图将是一个UCM视图,该视图自动关联到右VOB的右流



    注意:我在“”中提到了一个更简单的解决方案,但它不会在Git回购中导入所有历史记录。

    虽然我不一定认为这是同步这两者的“最佳”方式,但您可以导入历史记录并通过我的Git cc工具将更改推回Clearcase,如前所述。

    谢谢,这似乎对我帮助很大。我同意将所有VOB或所有UCM组件放在一个repo中会使GIT需要很长时间来执行操作,特别是当它的容量大约为20GB时。你能给我澄清更多的事情吗。假设am有一个针对一个ucm组件/一个VOB的repo,但根据讨论,am有所有重要的CC/ucm流作为repo中的分支,如果所有分支都在同一个裸回购中,不同的开发人员是否可以同时推送到同一回购的不同分支而不必等待?@Senthil:是:您可以推送到远程裸回购中的任何分支。注意:如果您需要使用多个UCM组件(即多个Git Repo)(读取或修改它们),则需要一个或多个带有子模块的主项目(请参阅)