git-svn分支:如何配置git config

Daa*_*ron 5 svn git branch git-svn git-branch

几个月前我配置了一个带有svn存储库的git.到目前为止,我只使用svn存储库来保持其上提供的应用程序的最新状态.但现在我也想把东西拿回来.要做到这一点,我要提交的每个功能都需要在一个单独的分支中.我读到了你应该如何创建一个新的分支等.但我认为我错误配置我的git,我没有任何分支信息等我认为我只有主干信息.这是我在我的git配置中设置svn存储库的方式:

[remote "origin"]
    url = url-of-git-repository
    fetch = +refs/heads/*:refs/remotes/origin/*
[svn-remote "svn"]
    url = url-of-svn-repository/trunk
    fetch = :refs/remotes/git-svn
[branch "master"]
    merge = refs/heads/master
    remote = origin
... other branch information below (these are git branches)
Run Code Online (Sandbox Code Playgroud)

现在你可以看到我的svn-remote url直接进入trunk.我读到了添加这个:

branches = branches/*:refs/remotes/*
Run Code Online (Sandbox Code Playgroud)

但是当我创建一个新的分支时,它会将它添加到trunk/branches /.当我不添加该行时,它不知道该分支的目的地是什么.

任何想法如何在不破坏现有分支,代码等的情况下解决这个问题?

迎接,大安

Tho*_*sen 6

我相信分支配置是相对于svn-remote网址的.

这是我们的配置方式

git svn -s url-of-svn-repository/foo

(在文件夹foo中,我们有正常的trunk/branches/tags结构)

[svn-remote "svn"]
        url = url-of-svn-repository
        fetch = foo/trunk:refs/remotes/trunk
        branches = foo/branches/*:refs/remotes/*
        tags = foo/tags/*:refs/remotes/tags/*
Run Code Online (Sandbox Code Playgroud)

您可以尝试调整此结构,或使用-s参数重新执行git svn克隆.它将为您配置所有这些( - 标准布局).