2012-04-03 118 views
4

我正在使用一个SVN仓库的Git SVN插件,每次我做一个git获取它都会获取所有SVN仓库中的所有分支更改。几个小时后很多时间很多分支需要很多提交如何使用Git SVN获取获取单个分支?

我可以告诉它只为特定分支提取更改吗?

回答

3

您可以通过使用git svn fetch --parent获取对应于当前的HEAD远程分支。

不幸的是,不可能从一个不是父分支的单个远程Subversion分支中获取数据。不过,你可以在后台踢一个git svn fetch;它不会影响你的工作副本。我已将计算机设置为使用cron在一夜之间自动执行提取。

0

我们遇到过同样的问题。我们的解决方案(非常满意)不使用SVN上的提取,而是让所有SVN标记,分支和中继导入git-like结构。

我们的SVN版本库甚至没有正确创建(trunk/tags/branch目录),但没关系。

git svn --tags PATH_TO_YOUR_TAGS --branches PATH_TO_YOUR_BRANCHES --trunk PATH_TO_YOUR_TRUNK svn+ssh://path.to.your.svn/repository 

这需要很长时间。在此之后,工作流程类似于git。如果你提交并让枝条像git,然后...

承诺SVN:

git svn dcommit 

结帐从SVN:(DIFF中)

git svn rebase