我可以轻松合并在CVS2Git迁移中创建的Git分支吗?

时间:2015-05-31 16:12:33

标签: git cvs2git

我们最近将CVS存储库迁移到了Git。

在我们的CVS存储库中,我们有一些代码,其中包含我们在开发完成后隐藏起来的代码,直到我们有时间在稍后的时间安排它们。

当我们使用CVS2Git进行迁移时,它导致分支被转移到Git仓库,但它的工作方式是只有在CVS中实际分支的文件出现在Git分支中。

例如,如果我们在HEAD上的CVS中有以下文件/文件夹树:

lib
   -com
      -example
         -folder1
            -file1a
            -file1b
         -folder2
            -file2a
            -file2b

然后我们只分析" file1a"和" file2b" CVS中BRANCH_COOL_FEATURE分支上的文件,结果为" BRANCH_COOL_FEATURE" Git中的分支只包含" file1a"和" file2b"文件。

我正在寻找最简单的方法来识别我想要合并的CVS分支中涉及的所有文件,包括它们在CVS中分支的位置,因此我确切地知道哪个差异合并,然后自动进行合并。

这是我迄今为止所做的最好的,但我希望有更好的方法:

1)MASTER和BRANCH_COOL_FEATURE上的git diff --name-status,将diff-filter设置为M以识别分支中实际修改的所有文件,或者只获取分支中的完整文件列表 2)对于每个文件,查看CVS历史记录并关联时间戳以标识该文件的两个生成的Git提交,这些提交表示要合并的差异 3)在该特定文件上运行git merge,并将两个提交指定为要在

中合并的diff

感谢任何帮助,谢谢!

-Git newbie

P.S。我没有关于如何运行实际CVS2Git转换的大量细节,但如果它非常重要,我可能会抓住它。

有没有办法轻松

0 个答案:

没有答案