Git cvsimport缺少对分支的增量更改

时间:2011-03-25 15:25:41

标签: git cvs git-cvs

我们使用git-cvsimport定期将更改从cvs复制到git

无论好坏,我们坚持使用git cvsimport而不是cvs2svn。最初我们计划了“一劳永逸”的cvs-to-git迁移,但人们最终在cvs存储库上做了更多的增量工作。我们希望将CVS分支的更改转换为git,以便开发人员可以在git中处理该功能。

上下文

  • 我们有专门的'fromcvs'git存储库,仅用于从cvs
  • 导入
  • 指定的“合并开发者”将此“fromcvs”存储库合并到他/她的本地
  • 我定期执行此命令将CVS中的更改带入git git-cvsimport -p -x -v -d $ CVSROOT myProj

问题

为什么分支FEATURE-FOO的“git版本”缺少我在所述分支的CVS版本中看到的提交?

例如,在cvs中我看到,在FEATURE-FOO分支上,在2月11日星期五对SomeDAO.java进行了更改。在“fromcvs”git存储库中,我看不到分支上的相同更改,

git checkout FEATURE-FOO git log src / java / com / company / somefeature / SomeDAO.java

  • 这是gitcvsimport中的错误吗?
  • 我们错误地采取了一步(见下文)来保持
  • 任何其他珍珠的智慧?

如何解释git cvs导入手册页上的警告?

另一件事:git-cvsimport手册页有这个警告(我已将其分解为可读性的子弹点)。

具体是什么意思“在那之后,你需要git合并增量导入或任何CVS 分支,你自己。“

  
      
  1. 你永远不应该在自己的分支上做任何自己的工作   由git cvsimport创建。

  2.   
  3. 默认情况下,初始导入将创建并填充“主”分支   来自CVS存储库的主分支   您可以自由使用;

  4.   
  5. 之后,您需要git合并增量导入或任何CVS   分支,你自己。

  6.   
  7. 建议指定一个名为remote的通过-r进行分离和保护   传入的分支。

  8.   
尽管互联网上有警告,但直到现在,Git cvsimport实际上对我们来说还算得很好。 (即“......下面五十岁以后,没有人必须独自在克朗代克旅行”)。也许我/我们愚蠢地忽视了这些建议,并被误导为一种虚假的安全感。

有什么建议吗?

感谢

1 个答案:

答案 0 :(得分:-2)

你遇到了问题,因为git-cvsimport从根本上被打破了。例如,请参阅"issues" section of its manpage