从git-svn迁移到纯git

时间:2017-06-30 10:11:33

标签: windows git svn

我们目前有一个包含大量数据的subversion服务器(~20Gb)。但是,每个人都使用git svn与该服务器通信。

我们希望转而使用纯git,但我们不想为此设置服务器,只需在文件共享上安装git存储库。

最好的设置方法是什么?理想情况下,文件服务器上的版本应该是"裸"存储库,但理想情况下也可以稍微提取svn更新,因为在我克隆时可能会执行一些提交。

[注意:一切都是Windows]

2 个答案:

答案 0 :(得分:1)

如果您想让纯粹的“裸”Git服务器与您的SVN存储库同步,您可以尝试SubGit

不仅每个SVN更新都会进入它,反之亦然:每次推送到Git存储库都会被转换为SVN。

设置此镜像运行

$ subgit configure --svn-url SVN_PROJECT_ROOT_URL --layout auto --trunk trunk repo.git

然后根据需要调整repo.git / subgit / config,然后运行

$ subgit install repo.git

之后,如果您可以直接克隆repo.git:

$ git clone repo.git wt/

或设置对它的访问权限,例如使用git-http-backend并与正常的Git存储库一起使用它。

有关详细信息,请参阅Quick Howto

免责声明:我是SubGit开发人员之一。

答案 1 :(得分:0)

嗯.....我想你可以在服务器上设置一个repo,你可以设置一个cronjob(或计划任务,无论如何),它将运行git svn fetch以同步显示在svn和然后将“本地”分支移动到svn分支,以便人们可以“看到”它们。使用git的开发人员可以将此repo添加为远程(例如:origin或“mainrepo”),然后就可以看到如何设置repos以开始共享内容(这本身就是一个完整的主题) )。