Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
RW是否使用svn(git svn服务器)访问git存储库?_Svn_Git_Version Control_Git Svn - Fatal编程技术网

RW是否使用svn(git svn服务器)访问git存储库?

RW是否使用svn(git svn服务器)访问git存储库?,svn,git,version-control,git-svn,Svn,Git,Version Control,Git Svn,是否有一个程序可以像git svn那样工作,但是服务器上的存储库是git,开发人员使用svn 我知道github.com允许svn访问他们托管的git存储库,但看起来他们还没有发布这个开源项目(还没有?),使用他们的服务器对我来说不是一个选项(甚至不是他们的私有存储库) 编辑:我想我要找的是一个与“git cvsserver”类似的——git svnserver。在一些搜索中,我在git邮件列表中找到了一些2-3年前的线程,但看起来没有人取得重大进展。我希望有人能纠正我的错误 目前是否有任何gi

是否有一个程序可以像git svn那样工作,但是服务器上的存储库是git,开发人员使用svn

我知道github.com允许svn访问他们托管的git存储库,但看起来他们还没有发布这个开源项目(还没有?),使用他们的服务器对我来说不是一个选项(甚至不是他们的私有存储库)

编辑:我想我要找的是一个与“git cvsserver”类似的——git svnserver。在一些搜索中,我在git邮件列表中找到了一些2-3年前的线程,但看起来没有人取得重大进展。我希望有人能纠正我的错误


目前是否有任何git svnserver项目正在进行中?我不喜欢重复的工作,但似乎是这样,但没有其他人可以重复。

我相信
git svn
链接是由git驱动的(用于监视--rebase或dcommit--svn分支)。
这意味着您可以首先在本地服务器上克隆所需的任何git repo(您也使用SVN),并将其用于本地git repo和SVN工作区之间的“
git SVN
”命令


一旦本地Git repo充分反映了您的SVN repo,您就可以返回到远程Git服务器。

这是通过SVN协议为Git存储库提供服务的Python代码:

看一看

SubGit是服务器端解决方案,它支持Subversion访问Git存储库,反之亦然。有关更多详细信息,请参阅,但通常使用SubGit相当容易:

SubGit需要本地访问您要推送到的Git存储库。在同一台计算机上创建Subversion存储库:

    $ svnadmin create $SVN_REPOS
然后跑

    $ subgit configure $SVN_REPOS
此命令创建
$SVN_REPOS/conf/subgit.conf
文件,调整其
git.default.repository
选项,如下所示:

    [git "default"]
    repository = /path/to/your/git/repository.git
您可以指定多个同步到单个Subversion存储库的Git存储库,只需添加必要的
[Git“identifier”]
部分

您还可以指定任意存储库布局,例如,标准布局如下所示:

    trunk = trunk:refs/heads/master
    branches = branches/*:refs/heads/*
    shelves = shelves/*:refs/shelves/*
    tags = tags/*:refs/tags/*
您还可以调整
$SVN\u REPOS/conf/authors.txt
以将SVN作者名称映射到git身份

在那次跑步之后:

    $ subgit install $SVN_REPOS
    $ ... let initial translation complete ... 
    $ TRANSLATION SUCCESSFUL
此时,您有了Subversion存储库及其Git对应项,它们是连续同步的,即SubGit在每次
svn提交时立即将svn版本转换为Git提交
,在每次
Git推送时将Git提交为svn版本


因此,您可以将更改提交到创建的Subversion存储库,并使所有更改与主Git存储库保持同步。

正是您想要的。这是一个开源servlet库,SVN客户端可以访问Git存储库。

我不确定这是否符合我的要求。这只适用于不想切换到git的同事,因为他们现在在svn中所做的只是签出/更新/提交。如果他们真的需要做更多的事情,有人可以通过实际使用git来控制他们。@dr可怕:这仍然可能是一个解决方案:像(另请参阅)这样的脚本可以为他们设置SVN历史记录,git repo就在那里,以便在被推回给其他git用户之前能够在本地git repo中恢复他们的SVN工作。向下:(有谁有镜子吗?我很想拿起这个项目。网站已经启动,但最后一次提交是20个月前。这看起来非常有用,但没有文档。有人知道一个例子、一个教程,或者至少是一个自述吗?谢谢分享!我会关注它,希望在它准备好投入生产时,我的公司y已经准备好尝试了。