我刚刚安装了Subversion(Collabnet)。文档解释了如何创建存储库,我已经做了,但我不知道如何创建特定的布局。我想创建这个布局
c:repositories
+- MyProjectRepository
+- project1
+--- trunc
+--- branches
+--- tags
+- project2
+--- trunc
+--- branches
+--- tags
+- project3
+--- trunc
+--- branches
+--- tags
文档只允许我从生成以下布局的模板创建一个新的存储库:
c:repositories
+- MyProjectRepository
+-- project1
+--- trunc
+--- branches
+--- tags
如何实现第一个布局?即单个存储库中的多个项目。
编辑
这3个目录是否被视为特殊目录?例如,如果我手动创建目录结构,subversion会识别这些目录吗?即,如果我在project3中创建标签,则标签链接将与project3/标签相关联。
感谢
Subversion将接受您想要的任何目录结构。只需从存储库的顶层签出您创建的存储库,然后删除现有结构。然后,您可以设置您喜欢的目录(在任何配置中),然后将新结构提交回存储库。
注意:这只适用于新(空)存储库。一个已经进行了更改的存储库会有点混乱,但想法仍然是一样的。
您也可以使用
svn mkdir <repo>/MyProjectRepository -m "project1 tree created"
svn mkdir <repo>/MyProjectRepository/project1 -m "project1 tree created"
svn mkdir <repo>/MyProjectRepository/project1/trunk -m "project1 tree created"
svn mkdir <repo>/MyProjectRepository/project1/branches -m "project1 tree created"
svn mkdir <repo>/MyProjectRepository/project1/tags -m "project1 tree created"
我知道这是一个老话题,但我注意到没有人提到使用svn import
,这是我一直在做的事情,似乎是启动新存储库甚至稍后添加项目的简单方法。
首先,使用svnadmin create
创建存储库。
然后,创建一个容器文件夹(我们称之为structure
),并将要导入到存储库的确切结构放入该文件夹中。
你最终会得到这样一个文件夹:
structure
project1
branches
tags
trunk
project2
branches
tags
trunk
project3
branches
tags
trunk
然后,您只需要执行svn import structure http://path-to-your-repository
。
编辑:查看此页面了解有关如何使用svn import
命令的更多详细信息http://svnbook.red-bean.com/en/1.7/svn.tour.importing.html.