如何使用git作为CVS的代理

如何使用git作为CVS的代理,git,proxy,cvs,Git,Proxy,Cvs,我们使用CVS作为源存储库。服务器离本地工作地点很远,速度很慢。存储库的大小也很大(大约2GB),我们几乎需要12个小时才能完成新的签出 我们想设置一个GIT服务器作为CVS的代理,这样我们可以在白天使用GIT服务器,并让它在晚上与CVS服务器同步。这方面有什么好的做法吗 基本要求如下: 分支支持 GIT和CVS之间的同步应该 是双向的,并致力于GIT 由不同的用户进行同步 使用相应的 使用者 谢谢。 顺便说一句,我读过这篇文章,但没有多大帮助。您可以设置一个存在于CVS repo末尾的git

我们使用CVS作为源存储库。服务器离本地工作地点很远,速度很慢。存储库的大小也很大(大约2GB),我们几乎需要12个小时才能完成新的签出

我们想设置一个GIT服务器作为CVS的代理,这样我们可以在白天使用GIT服务器,并让它在晚上与CVS服务器同步。这方面有什么好的做法吗

基本要求如下:

  • 分支支持
  • GIT和CVS之间的同步应该 是双向的,并致力于GIT 由不同的用户进行同步 使用相应的 使用者
  • 谢谢。
    顺便说一句,我读过这篇文章,但没有多大帮助。

    您可以设置一个存在于CVS repo末尾的git repo。您不需要导入所有历史记录。这样的痛苦是不值得的。您应该能够在远程git repo之间进行推拉操作。然后只需从远程git repo提交到cvs repo。这应该可以避免很多传输延迟,因为git在发送新文件和压缩文件方面做得很好

    最终,每个人都会将远程git回购视为一个真正有价值的回购,而您将能够放弃cvs


    希望这能有所帮助。

    您可以设置一个存在于CVS回购协议末尾的git回购协议。您不需要导入所有历史记录。这样的痛苦是不值得的。您应该能够在远程git repo之间进行推拉操作。然后只需从远程git repo提交到cvs repo。这应该可以避免很多传输延迟,因为git在发送新文件和压缩文件方面做得很好

    最终,每个人都会将远程git回购视为一个真正有价值的回购,而您将能够放弃cvs


    希望这能有所帮助。

    您确定不能停用您的CVS存储库吗?一旦您使用了一个具有“变更集”(不是git的工作方式,而是足够接近的方式)、文件重命名和合并跟踪概念的客户机,我想您不会再容忍CVS了。至少,
    cvs2svn
    可以从现有的CVS数据中为您提供比CVS现在更好的SVN存储库。您需要保留CVS的原因是什么?我们最终将CVS存储库迁移到subversion,并从subversion迁移到git,这在保留历史和分支方面为我们提供了最好的结果。然后,我们对此进行了一段时间的研究,认为它已经变得太大而不再有用(有很多遗留jar和图像),所以我们删掉了开发分支,并在保留历史的同时再次将旧存储库设置为只读(以防您不得不去查找某些内容)。它工作得非常好。您确定不可以停用您的CVS存储库吗?一旦您使用了一个具有“变更集”(不是git的工作方式,而是足够接近的方式)、文件重命名和合并跟踪概念的客户机,我想您不会再容忍CVS了。至少,
    cvs2svn
    可以从现有的CVS数据中为您提供比CVS现在更好的SVN存储库。您需要保留CVS的原因是什么?我们最终将CVS存储库迁移到subversion,并从subversion迁移到git,这在保留历史和分支方面为我们提供了最好的结果。然后,我们对此进行了一段时间的研究,认为它已经变得太大而不再有用(有很多遗留jar和图像),所以我们删掉了开发分支,并在保留历史的同时再次将旧存储库设置为只读(以防您不得不去查找某些内容)。它工作得很好,听起来很有趣。如果我需要分支操作,该怎么办?我会为CVS世界中的发布保留这些操作。在CVS端开始这样的活动是明智的。我刚刚意识到这个解决方案需要大量的手工工作。我将等待更多的答案。听起来很有趣。如果我需要分支操作,该怎么办?我会为CVS世界中的发布保留这些操作。在CVS端开始这样的活动是明智的。我刚刚意识到这个解决方案需要大量的手工工作。我会等待更多的答案。