警告:一般来说,我是 git 的n00b。我的团队在 svn 中使用了功能分支,我想使用 git-svn 来跟踪我在特定功能分支上的工作。我(大致)关注 Andy Delcambre的帖子设置我的本地 git repo,但这些指令似乎已经导致 git 选择最近更改为远程的 svn 分支库;问题是,这不是我关心的分支。如何控制 git-svn 使用哪个分支?还是我接近这个完全错误的?

更新:我确实使用了 -T -b -t 选项(在我的情况下是因为 svn repo有多个项目,但我希望 git repo只包含我正在处理的项目。

有帮助吗?

解决方案

Muchas gracias向Bart的博客提供了这个方便的 svn分支机构的参考资料Git的。显然我只需要在创建 git 分支时指定一个远程分支,例如

git checkout -b git-topic-branch-foo foo

其中 foo 是远程分支的名称。

其他提示

你可能也看看这个: git-svn是一种门户毒品 - 抢劫铁路

当我需要确保我的本地分支指向正确的远程svn分支时,我使用了类似的东西:

git branch -r

获取我想要跟踪的远程分支的名称。然后

git reset --hard remotes/svn-branch-name

显式更改我的本地分支以指向不同的远程分支。

我首先需要运行'git svn fetch',因为我想要关联的分支是在我的git客户端之后创建的。

我使用git-svn但我没有使用与SVN分支互操作的功能。话虽如此,我注意到您所关注的教程没有使用 -T,-b ,-t git svn init的选项。这些选项告诉git-svn命名上游trunk / branches / tags目录,这在你的情况下可能很重要。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top