SVN使用经验心得三

时间:2021-08-13 16:34:37
 

21、将所有的开发代码存放在trunk上。

    常用分支模式:

    a、发布分支:在代码发展到一定阶段,建立发布分支,将当前的一个版本取出来,拷贝到branches目录下,进行全面严酷的测试,如发现BUG则在当前版本进行修复,并同步更新trunk中的BUG,经测试完成后,将文件拷贝到tags目录中发布,并提交给客户。

    b、特性分支:如果需要作复杂的修改,会影响到trunk代码的稳定性,则建议建立一个特性分支,等特性稳定之后,再和truck主干合并

   

22、标签TAG:它是某个项目,某个时间的一个快照,这个术语很常见,每次提交一个修订版本其实都是一个精确的快照。

 

23、经典常用的版本库布局:

       如果是单个项目的,建议使用如下格式

       /trunk      保存项目开发的主线。

       /branches   保存项目的各种开发分支。

       /tags       保存项目的标签,也就是创建后永远不会修改的分支,例如发布release版本。

       如果是多个项目在同一个版本库中,建议使用如下格式

       /RigTMS/trunk

       /RigTMS/branches

       /RigTMS/tags

       /DocProtect/trunk

       /DocProtect/branches

       /DocProtect/tags

       注释**个人比较倾向于使用第一种方式,一个是格式比较简单,终端用户不容易引起混淆,二是版本库的权限控制比较简单,三是以后的备份/还原相对易行

      

24SVN的数据存储格式有Berkeley DBFSFS。我们现在所使用的版本默认为FSFS格式的数据存储。

 

25SVN自带工具

       (要使用这些工具可以在命令行模式下输入svnadmin helpsvnlook help等指令即可)

       Svnadmin:提供创建SVN版本库的功能,还可以用来维护这些版本库。

       Svnlook:用来查看版本库中不同的修订版本和事物(它不会改变版本的内容)。

       Svndumpfilter:可以简单快速的作为SVN版本库历史的以路经为基础的过滤器。

       Svnsync:将一个版本库的历史转移到另外一个上。特点是可以远程操作(“源”、“目标”版本库以及svnsysnc程序可以在不同的计算机上使用。)

 

26SVN节约磁盘空间的主要方法:

1、采用增量化技术,对两组数据,只记录其中的一组,另外一组只是存放与第一组有差别的部分。

2、由于客户端和服务器网络异常,或客户端svn进程异常中止,都可能导致文件提交的事务失败,可以删除意外中止的事务。可以使用$svnadmin lstxns myrepos来清除。

 

27、删除不使用的Berkeley DB日志文件

       Svnadmin list –unused –dblogs /path/to/repos

       Rm ‘svnadmin list –unused-dblogs /path/to/repos’