我刚刚发现this question关于从没有--stdlayout的克隆中恢复的问题。我没有找到这个标志的文件 - 它做了什么?
答案 0 :(得分:38)
Subversion没有 branch 或 tag 的任何概念。相反,通常只需将存储库的内容复制到目录中即可进行模拟。
为了让git svn
能够识别分支和标签以及主分支(“主干”),您必须使用--tags
(或{明确告诉它在哪里找到它们) {1}}),-t
(或--branches
)和-b
(或--trunk
)选项。
然而,许多Subversion存储库遵循Subversion书中列出的标准约定-T
。 --trunk=/trunk --branches=/branches --tags=/tags
(或--stdlayout
)对此约定进行编码,因此每次克隆Subversion存储库时都不必传递相同的参数。
您可以在-s
手册页中找到此信息,您可以在Unix下使用git-svn(1)
以及通过内置Git帮助系统man git-svn
以独立于操作系统的方式访问该页面。 Kernel.Org上也提供All of the Git man pages,它们通常是您搜索git-svn(1)
时的第一个搜索结果。
答案 1 :(得分:13)
--stdlayout
(-s
)告诉git-svn
/branches
中的文件夹应作为分支导入,/tags
中的文件夹是项目状态的快照并应作为标签导入。主分支将设置为/trunk
。
相当于--trunk=trunk --tags=tags --branches=branches