【发布时间】:2011-02-02 12:53:31
【问题描述】:
我正在努力理解如何能够从 Subversion 克隆一个 git 存储库,然后将该存储库克隆到另一台机器 (git-to-git) 并且仍然可以访问所有原始 Subversion 分支和标签。以下是我所做的,以及我遇到障碍的地方。
首先,在机器 A 上,我将我的 Subversion 存储库克隆到一个 git 存储库中:
[machine A]$ git svn clone -s http://svn.repo.url/MyProject
这给了我一个 git 存储库,其中包含我原始 Subversion 存储库的全部历史记录以及所有分支和标签:
[machine A]$ git branch -r
* master
remotes/v1
remotes/v1.1
remotes/v1.2
remotes/test_migration
remotes/tags/20100104
remotes/tags/20100308
remotes/trunk
现在,在机器 B 上,我想克隆那个 git 存储库,并且仍然可以访问所有原始 Subversion 分支和标签。首先,我克隆了存储库:
[machine B]$ git clone machine.a:git/MyProject
这让我获得了 git 存储库的克隆...但我没有看到任何远程分支或标签:
[machine B]$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/master
无论我尝试哪种形式的 git checkout --track -b [branch] origin/[branch],我都无法在机器 B 上创建一个分支来跟踪远程的、最初来自 svn 的分支之一……git svn fetch、@987654327 也没有@,或者我可以尝试从机器 A 上的存储库中拉入远程分支和标签的任何其他内容。我做错了什么?
【问题讨论】:
标签: svn git version-control tags branch