一、安装环境:
1.SVN服务端(不安装缺陷管理平台不需要):Subversion
2.SVN客户端:TortoiseSVN(1.5.x),VisualSVN或者AnkhSVN
3.缺陷管理平台:BugTracker.NET
4.持续集成平台:CruiseControl.NET
二、配置环境:
1.安装SVN服务端:
鉴于CollabNet的打包已经很完善了,就不多提了,值得一提的是,现在的SVN的安装包已经是一个解决方案级数的集成包,涵盖各大平台,连Linux的各大发行版都有各自的安装包,相当方便,更令人兴奋的是安装包还包含配置Apache的一条龙服务,为安装调试省了很多时间,想起以前搞Apache和SVN融合就花去大把时间,真是感慨啊 ^_^
2.配置VisualSVN:
1)配置文件忽略列表:
如图示,要忽略的文件有:
[Bb]in [Oo]bj [Dd]ebug [Rr]elease *.user *.aps *.eto *.suo
2)设置项目版本库路径和本地路径
3)同样的TortoiseSVN也设置同样的忽略文件列表 O(∩_∩)O
3.或者使用AnkhSVN(开源的VS插件,新版本终于支持VS2008 微笑)
下面是一些使用截图,不过功能和易用性上比不上VisualSVN,不过Free和Open是它的优势 O(∩_∩)O
1)设置VS使用AnkhSVN,安装它后默认是这个设置。
2)版本浏览器
3)版本控制菜单
4)文件对比
4.配置缺陷管理平台BugTracker.NET(没有服务器的时候,忙吧是不错的替代品,毕竟忙吧不是缺陷管理系统,这方面还是有欠缺的 -_-!)
选用BugTracker.NET是看重它够简单,容易和SVN结合,而且是.NET平台,方便出了问题好自己修复好扩展,当然这是时间充裕的美好愿望 呵呵
1)创建数据库后,运行根目录下的Setup.sql构建数据库
2)修改根目录下的$/subversion/btnet_post_commit.vbs // Svn的Post脚本
修改svnlook_path为SVN服务端的安装目录,如
svnlook_path = """D:/Program Files/CollabNet Subversion Server"""
修改连接字符串connection_string,如:
connection_string = "Provider=SQLNCLI; Data Source=(local); Initial Catalog=BugTrackerDB;User ID=Alex;Password=密码;"
【注意】这里是使用ADO连接数据库,如果是SQL 2005,SQL的Provide是“SQLNCLI”,如果是SQL 2000就是“SQLOLEDB”
3)修改根目录下的$/subversion/pre-commit.cmd //其实现在我也看不来它现在的用处在哪里 -_-!
修改 两个环境变量
set SUBVERSIONBINPATH=D:/Program Files/CollabNet Subversion Server //SVN服务端目录
set REPOSITORYPATH=D:/MyApp/TortoiseSVN/BtNet[SVN] // 版本库地址
修改连接字符串CONNECTIONSTRING
@set CONNECTIONSTRING="Provider=SQLNCLI; Data Source=(local); Initial Catalog=BugTrackerDB;User ID=Alex;Password=密码;"
4)修改集成TSVN的批处理$/subversion/TortoiseSVN_integration.bat
修改BugTracker的Bug页面连接地址
svn propset -R bugtraq:url "http://localhost:10527/edit_bug.aspx?id=%%BUGID%%" . // 注意最后的"."不要忽略,这是本地目录的意思 O(∩_∩)O
5)修改Web.config这几个和SVN有关的设置
当然connectstring就不要忘了该哦 O(∩_∩)O哈哈~
6)创建版本库(当然,你可以用TSVN创建 O(∩_∩)O)
脚本:
cd D:/Program Files/CollabNet Subversion Server //设换到服务端目录,如果设置了环境变量,可以略过 O(∩_∩)O
D:
svnadmin create D:/MyApp/TortoiseSVN/SVNServer/BtNet(SVN) //创建SVN版本库
创建后记得把刚才修改好的btnet_post_commit.vbs放进hooks目录中 ^_^
7)修改版本库的设置(权限等)
svnserve.conf文件
[general]
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
authz文件
[BtNet(SVN):/] //“BtNet(SVN)”是版本库根目录
Alex = rw // 设置用户的读写权限
* = r // 限制其他用户的写权限
passwd文件 // 设置用户密码
[users]
Alex = Alex的密码
8)运行服务器(当然你可以在安装SVN服务端的时候设置为服务 ^_^)
脚本如:
svnserve.exe -d -r D:/MyApp/TortoiseSVN/SVNServer //路径为版本库的父目录
9)运行TSVN配置脚本
TortoiseSVN_integration.bat
【注意】要copy到版本库的本地check out目录的根目录中执行。
5.使用权限管理平台和TSVN(部分功能展示)
1)创建项目
2)创建Bug Track
3)结合BugId填写版本更新
4)Bug Track根据刚才提交关联版本库
5)查看版本库修改文件,历史和差异等 O(∩_∩)O 【差异功能好像有点问题,有空要调试一下才行 -_-!】
(未完待续)