几个月前,我配置了一个带有 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)
现在你可以看到我的 svn-remote url 直接进入主干。我读到有关添加此内容的信息:
branches = branches/*:refs/remotes/*
但是当我创建一个新分支时,它会将它添加到 trunk/branches/。当我不添加该行时,它不知道分支的目的地是什么。
知道如何在不破坏现有分支、代码等的情况下解决这个问题吗?
问候, 大安
最佳答案
我相信分支配置是相对于 svn-remote url 的。
这是我们的配置方式,它是通过做的方式制作的
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/*
你可以尝试调整到这个结构,或者用 -s 参数重新做你的 git svn clone。它将为您配置所有这些(--standard-layout)。
关于svn - git-svn 分支 : how to configure git config,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3289811/