2010年10月20日

在windows服务器上安装svn版本控制软件并设置自动部署

1.到http://subversion.tigris.org/getting.html#windows上选择windows版svn服务器下载。

我选择的事silksvn,下载地址是http://www.sliksvn.com/pub/Slik-Subversion-1.6.3-win32.msi

2.安装svn软件。

3.设置path环境变量(在系统属性(右击我的电脑,选属性)>“高级”标签>下面的“环境设定”按钮>找到“PATH”),将svn装目录下的bin目录所在路径添加到path中。

4.建立一个文件夹作为svn的版本库,如我的是d:\svn

5.在命令行中输入

sc create svn
        binpath= "svn安装路径 --service -r d:\svn"
        displayname= "Subversion Server"
        depend= Tcpip
        start= auto

(不用换行)来把svn注册为服务。

6.在服务管理中打开刚注册的Subversion Server服务。

7.在d:\svn下建立版本库目录。比如我的是d:\svn\myproject

8.如果项目原来有项目文件,可能需要把项目文件导入版本库。比如我的一个web项目,它初始的文件存在d:\myproject,我就要输入

svn import -m "initial import" d:\myproject svn://localhost/myproject

来引入初始文件。其中initial import为注释,可以换成别的,但不要删除。

9.修改d:\svn\myproject\conf下的passwd文件,添加用户名和密码

10.修改d:\svn\myproject\conf下的svnserve.conf文件,去掉anon-access,auth-access,password-db,realm前面的注释

11.假设要部署的位置是d:\deploy\myproject,先将版本库签出到那里:

svn checkout svn://localhost/myproject d:\deploy\myproject

12.为了实现提交之后自动部署,新增d:\svn\myproject\hooks下的post-commit文件,里面有一行:

关键在于post-commit脚本的执行环境问题。不能简单地用svn update解决,完整的命令如下:

"C:\Program Files\VisualSVN Server\bin\svn" update [目的版本库路径] --quiet --non-interactive --username [用户名] --password [密码] --config-dir d:\svn\oa\conf

这样就能自动把代码部署到需要的地方。也可以再这个文件里加入其它部署需要的代码。



没有评论:

发表评论