简体   繁体   English

使用git中的钩子导入和导出到cvs

[英]use hooks in git to import and export to cvs

i would like to know if this is possible: 我想知道这是否可能:

  • create a shared git repository that connects to cvs 创建一个连接到cvs的共享git存储库
  • post two hooks to it: 发布两个钩子:
    1. everytime anyone pulls from it, it imports from the cvs repository 每当有人从中取出时,它都会从cvs存储库导入
    2. everytime anyone pushes to it, it exports to the cvs repository 每次有人推送它,它都会导出到cvs存储库

basically create a 'lazy mirror' of a cvs repository that is completely transparent to the git users 基本上创建一个cvs存储库的“懒镜”,它对git用户完全透明

if this is not possible what are the best method to create a cvs mirror? 如果这不可能,创建cvs镜像的最佳方法是什么?

ps. PS。 is git-cvsserver usable? git-cvsserver可用吗? besides the commits, checkouts and updates, can it merge two branches? 除了提交,结帐和更新,它可以合并两个分支?

git-cvsserver has limitations: git-cvsserver有局限性:

  • Currently cvsserver works over SSH connections for read/write clients, and over pserver for anonymous CVS access. 目前,cvsserver适用于读/写客户端的SSH连接,以及通过pserver进行匿名CVS访问。
  • CVS clients cannot tag, branch or perform GIT merges. CVS客户端无法标记,分支或执行GIT合并。
  • git-cvsserver maps GIT branches to CVS modules. git-cvsserver将GIT分支映射到CVS模块。 This is very different from what most CVS users would expect since in CVS modules usually represent one or more directories. 这与大多数CVS用户期望的非常不同,因为在CVS模块中通常代表一个或多个目录。

You can find best practices for using Git with CVS here , with a full git-cvs setup . 你可以在这里找到使用Git和CVS的最佳实践 ,并使用完整的git-cvs设置
You can try and add to this setup a post-receive hook and see if a git cvsexportcommit can work from there. 您可以尝试在此设置中添加一个post-receive挂钩 ,看看git cvsexportcommit可以在那里工作。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM