本节向大家介绍SVN仓库目录结构规范化问题,内容主要包括介绍四个主目录以及如何切换正在使用的SVN目录,希望通过本节的学习大家对SVN仓库目录结构规范化有深刻的理解。下面是具体介绍。
SVN仓库目录结构规范化
由于越来越多的开发者和开源项目加入了SVN仓库,因此已经使用数年的SVN仓库必须进行规范化管理。
SVN目录结构调整后,将有四个主目录:
branches
tags
trunk
laboratory
其中,branches、tags和trunk都由团队进行统一管理,因此【不要在上述三个子目录中随意创建子目录】。
***的laboratory用于开发者保存个人项目和处于研究试验状态的项目。
特别说明:开发者个人项目达到一定成熟度后,将可以在申请后迁移到trunk目录。
SVN主目录详细说明
下面对四个主目录做详细说明:
branches
SVN仓库目录中的分支目录,用于保存开源项目各个版本的各个主要发布版本。
例如/branches/fleaphp-1.7用于保存FleaPHP1.7系列的***内容,而/branches/qeephp-2.0用于保存QeePHP2.0系列的***内容。
因此当你需要取得某个开源项目特定系列的***文件时,请使用branches目录下的文件。同时,当branches下出现一个新的子目录时,表示该项目的特定系列即将发布正式版本,并且以后该系列的***修改都将在branches的子目录中进行。
tags
当开源项目发布一个特定版本时,将在tags目录中创建对应的子目录,例如tags/fleaphp-1.7.1524表示FleaPHP1.7.1524这个正式发布版。
laboratory
社区开发者可以在laboratory目录下建立自己的个人子目录。例如laboratory/zpvip/FleaStart。
trunk
与大家通常认为的不同,SVN仓库目录的主目录中trunk目录作为开发主干分支,虽然保存有当前***的代码。但是主干分支并不是稳定的。
所有***的修改都会提交到trunk中,如果你在开发工作中使用svn来获得FleaPHP或者QeePHP的***代码,强烈建议更换为使用branches目录中的特定系列。这样可以确保你的开发工作不会因为FleaPHP或QeePHP的开发而中断。[b我们的开发团队会确保将***的bug修正合并到branches分支的特定系列中。
例如你的应用程序基于QeePHP2.0,那么在应用程序中,应该引用/branches/qeephp-2.0这个稳定版本,而不是处于不断变化中的/trunk/qeephp版本。
如何切换正在使用的SVN仓库目录结构?
假设d:wwwmyapplibqeephp目录对应于svn://svn.fleaphp.org/trunk/qeephp,那么现在应该切换为svn://svn.fleaphp.org/branches/qeephp-2.0。
切换操作可以在命令行中进行:
d:
cdwwwmyapplibqeephp
svnswitchsvn://svn.fleaphp.org/branches/qeephp-2.0
svnup
复制代码如果使用TortoiseSVN,可以在d:wwwmyapplibqeephp目录中点鼠标右键,选择“SVN->SwitchTo”,然后输入svn://svn.fleaphp.org/branches/qeephp-2.0即可。
经过切换,你将可以获得一个带有***bug修订的稳定版本。本节关于SVN仓库目录结构问题介绍完毕。
【编辑推荐】