【发布时间】:2012-07-06 06:24:01
【问题描述】:
我使用以下命令将 svn repo 克隆到 git 中,执行后,我看到了一些虚假的分支。
git svn clone [SVN repo URL] --no-metadata -A authors-transform.txt --stdlayout ~/temp
git branch -a
*(no branch)
master
remotes/abc-1.3.x
remotes/abc-1.3.x@113346
remotes/abc-1.3.x@541512
remotes/branch_test_script
remotes/tags/modules-1.2
remotes/tags/modules-1.2@113346
remotes/tags/modules-1.2@516265
remotes/tags/release-1.1
remotes/tags/release-1.1@113346
remotes/tags/release-1.1@468862
remotes/trunk
在 svn 中创建的实际分支是 abc、branch_test_script、modules 和 release。 有人可以帮助了解 'abc-1.3.x@113346' 、 'abc-1.3.x@541512' ... 'release-1.1@468862' 等是什么吗?
我们怎样才能摆脱这些虚假的分支/它们意味着什么?
谢谢,
加亚特里
【问题讨论】:
-
我很难找到这个命名的来源,但看起来这些分支是从 SVN 提交创建的,发现它们不再被 svn 分支(或标签)引用最初制作的。与 Git 中未引用的提交类似,只是可以恢复提交的分支名称。
-
@fork0 :感谢您的回复。但我不清楚如何在 svn 中存在未引用的提交。参考资料怎么会丢失?您能分享一下您对此的看法吗?
-
我不知道。也许 SVN 存储库的维护者从未清理过它们(或者 SVN 根本没有能力?)。我并不是说参考资料丢失了,而是有人刚刚从历史的较早时间点开始提交
-
也许 SVN 中的提交列表总是产生所有提交的完整列表,与它们是否被标签或分支引用无关
-
但是其中一些分支没有被删除或移动。即使对于一些正常的提交修订,也会创建这些分支。知道为什么会这样吗?
标签: git git-svn git-branch