我正在使用带有svn存储库的git一切都很顺利我用git完成了所有分支,所以我没有在svn上分支但是我用git分支并将这些分支推送到一个单独的位置。然后我在需要时从分支机构提交更改 但是现在我想创建一些实际存在于我尝试的svn上的分支:
$ git svn branch someFeature -m "message"
,我明白了:
$ git svn branch someFeature -m "message"
Multiple branch paths defined for Subversion repository.
You must specify where you want to create the branch with the
--destination argument.
我应该如何指定目标,我无法弄清楚这一点,手册页也不是那么清楚。
答案 0 :(得分:32)
您有多个(或没有)来自svn的目录标记为分支的位置。 看看你.git / config文件,会有这样的部分:
[svn-remote "svn"]
url = file:///someurlto/svn
fetch = trunk:refs/remotes/trunk
branches = branches/*:refs/remotes/*
branches = branches2/*:refs/remotes/*
分支机构将有多个条目。 (或者,如果您没有任何分支条目,则第一行应使用标准SVN repo布局。)
因此,在分支时,您必须指向应在哪个目录中创建分支:
git svn branch someFeature -m "test" --destination branches2
其中最后一个元素是.git / config。
中分支行的目录之一答案 1 :(得分:1)
如果我阅读了git svn
man page权利:
git svn <command> [options] [arguments]
,你应该输入:
git svn branch -m "message" someFeature
而不是:
git svn branch someFeature -m "message"