本节和大家一起学习一下SVN自动更新WEB服务器方面的知识,通过一个实例向大家介绍SVN自动更新WEB服务器的方法,欢迎大家一起来学习,希望通过本节的学习你能有所提高。
基本原理配置,SVN自动更新WEB服务器
最近有个小项目,需要用svn来进行版本控制。
项目组的同僚有8个人,大家都在本地开发,然后提交到服务器——服务器就是其中一台机器。专
门安排一个测试员来进行项目测试,但测试人员每次测试之前都需要去更新svn,再拷贝到web服务器上,然后才能测试,这样很不方便。所以希望当开发人员
有更新时,代码如果能自动更新到web服务器上——这样不就省事了。
我以往都是提交者,但这次轮到我来设置了,这里搜索到了一个教程,让我的安装配置过程非常顺利:
step1:下载和安装
配置SVN自动更新WEB服务器时,首先在subversion的官方网站去下载windows安装包,***版是1.3.1,可惜在项目树上只更新到了1.3.0的二进制包。
下载后安装在本地机器上,这里注意的是***将安装目录指定为纯英文名目录,安装在中文目录下天知道哪天会冒出一个让你想破头也想不出的错误来。
下载tortoisesvn进行本地安装,我安装的是***的1.3.2forsvn1.3.0,这是一个将svn集成到windowsshell中的gui管理工具,推荐使用。
step2:创建储存库
安装完tortoisesvn后提示要重启机器,其实启不启都可以正常使用了,首先创建svn储存库(repository),可以选择命令行方式或者通过tortoisesvn插件进行gui操作,命令行运行如下:
svnadmincreatee:\svn\repository
e:\svn\repository就是我指定的储存库目录,如果用gui方式,可以在这个目录下点击右键选择[totoisesvn]->[createrepositoryhref...]进行创建,版本库模式指定为默认的即可。
repository
创建完毕后会在目录下生成若干个文件和文件夹,dav目录是提供给apache与mod_dav_svn使用的目录,让它们存储内部数据;db目录就是所有版本控制的数据文件;hooks目录放置hook脚本文件的目录;locks用来放置subversion文件库锁定数据的目录,用来追踪存取文件库的客户端;format文件是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号;
step3:配置
打开/conf/目录,打开svnserve.conf找到一下两句:
#[general]
#password-db=passwd
去之每行开头的#,其中第二行是指定身份验证的文件名,即passwd文件
同样打开passwd文件,将
#[users]
#harry=harryssecret
#sally=sallyssecret
这几行的开头#字符去掉,这是设置用户,一行一个,存储格式为“用户名=密码”,如可插入一行:admin=admin888,即为系统添加一个用户名为admin,密码为admin888的用户。我们再来看一下SVN自动更新WEB服务器的第四步,运行SVN服务。
step4:运行svn服务
在命令行执行
svnserve--daemon--roote:\svn\repository
服务启动,--daemon可简写为-d,--root可简写为-r,可以建立一个批处理文件并放在windows启动组中便于开机就运行svn服务,或者在这个地址
http://clanlib.org/~mbn/svnservice/
下载那个svnservice.exe文件,拷贝到e:\svn\bin目录下,再从命令行下执行:
svnservice-install--daemon--root"e:\svn\repository"
scconfigsvnservicestart=auto
netstartsvnservice
此文件会将svn变成windows系统的一个服务,并默认为自启动,注意:执行第三句时确保前面以命令行方式运行的svn服务已经停止,如果没停止可在其窗口中按ctrl+c中止运行。
step5:创建项目版本树
确定svn服务(命令行或windows服务)运行后,在你需要导入储存库的目录下单击右键选择[tortoisesvn]->
[import...],在弹开的窗口的url框中输入"svn://localhost/myproject"点击"ok"
执行导入,如果没有报错,数据就全部加入svn储存库目录树上了。用命令行也可以完成这些操作,这需要你在系统变量中新建一个“svn_editor”的系统变量,变量值为本地的一个文本编辑器执行文件路径,一般指到windows的记事本上就行了"c:\windows\notepad.exe",然后新开一个cmd窗口,执行svnmkdirsvn://localhost/myproject
随即关闭记事本打开的log文件窗口后按"c"键继续后生成项目树。一般情况,我们在创建文件根路径后应该在创建三个目录:branches、tags、trunk,这三个目录是subversion需要的三个目录。对于checkout、commit、update等操作可以通过svn命令行方式执行,也可以用tortoisesvn的windows菜单完成,非常简单咯。本节关于SVN自动更新WEB服务器内容介绍完毕。
【编辑推荐】
- 八步实现在Fedora 11上通过Apache搭建SVN服务器
- 搭建SVN版本库服务器端,使用SVN命令行也可实现
- RedHat系统下如何搭建SVN服务器大揭秘
- Windows下搭建SVN服务器简明步骤
- 学习笔记: 如何删除SVN版本控制信息