如何让git-svn使用特定的svn分支作为远程存储库?
一个警告的话:我是一个普遍的g00b。 我的团队在svn
使用了特性分支,我想用git-svn
来跟踪我在特定分支上的工作。 我已经(大致)跟随Andy Delcambre的post来设置我的本地git
repo,但是这些指令似乎已经让git
挑选了最近作为远程仓库改变了的svn
分支; 问题是这不是我关心的分支。 我如何控制git-svn
使用哪个分支? 或者我接近完全错误?
更新:我没有使用-T
, -b
和-t
选项(在我的情况下,因为svn
回购有多个项目,但我希望git
回购只包含我正在工作的项目)。
Muchas gracias巴特的博客这个方便的参考svn分支在混帐 。 显然,我所需要的只是在创buildgit
分支时指定远程分支,例如,
git checkout -b git-topic-branch-foo foo
其中foo
是远程分支的名称。
你也可以看看这个: git-svn是一个网关毒品 – robby on rails 。
当我需要确保我的本地分支指向正确的远程svn分支时,我使用了类似这样的东西:
git branch -r
获取我想要跟踪的远程分支的名称。 然后
git reset --hard remotes/svn-branch-name
明确地改变我的本地分支指向一个不同的远程分支。
我需要先运行'git svn fetch',因为我想要关联的分支是在我的git客户端之后创build的。
我使用git-svn,但我没有使用与SVN分支互操作的function。 话虽如此,我注意到你下面的教程没有使用-T,-b,-t选项来git svn init。 这些选项告诉git-svn什么上游干线/分支/标签目录被命名,这可能在你的情况下很重要。