代码之家  ›  专栏  ›  技术社区  ›  Arthur Ulfeldt

如何通过git svn使用嵌套分支

  •  7
  • Arthur Ulfeldt  · 技术社区  · 14 年前

    我们的svn服务器有一个名为Dev的主干,分支位于

    /Branches/Release/1.0/
                     /2.0/
                     /2.3.4/
    

    我克隆了它 git svn clone -T Dev ... -b Branches ...
    git branch 2.1 remotes/Release/2.1 我得到:
    fatal: Not a valid object name: 'remotes/Release/2.1'.

    • 如何引用远程分支?
    • 我需要用不同的参数重新克隆吗?
    1 回复  |  直到 14 年前
        1
  •  11
  •   Community Egal    7 年前

    如中所述 How do I import svn branches rooted in different directories into git using git-svn?

    [svn-remote "svn"]
        url = svn://svnserver/repo
        fetch = trunk:refs/remotes/trunk
        branches = branches/*/*:refs/remotes/*
        tags = tags/*:refs/remotes/tags/*
    

    这也在 this thread .
    对于更复杂的SVN分支布局(如 branches within trunk! ),在实施git-SVN集成之前,对SVN repo的修改可能首先是有序的。

    由于Git1.6,“1.6.x提供了深度克隆,因此多个通配符可以与--branchs选项一起使用”,如中所述 Cloning a Non-Standard Svn Repository with Git-Svn ".

    git svn clone https://svn.myrepos.com/myproject web-self-serve --trunk=trunk --branches=branches/*/* --prefix=svn/