如何利用svn自动同步更新到网站服务器?
一、安装 SVN服务器程序
11运行 VisualSVN-Server-172msi
12选择程序安装目录 和 SVN仓库目录
我程序装在 C:\Program Files\VisualSVN Server , SVN仓库目录在 D:\SVN
13 安装完成,立即运行
二、服务器配置
21服务器维护界面
22仓库目录默认的内容
23创建新项目wapzucom
23创建用户ve
24设置项目的用户权限
Properties Security Add 选择刚创建的用户 ve ok 应用 确认
三、创建测试服务器目录 D:\WWWROOT ,本地开发目录 D:\WORKDIR
四、将代码(D:\Code )导入到项目仓库
输入用户名 密码 并 勾选 保存认证
导入成功,并返回版本号1
五、导出项目代码到工作副本、测试服务器目录
同理,另外导出一份到测试服务器目录D:\WWWROOT (测试服务器的Apache目录指向该位置)
六、使用Hooks自动更新测试服务器代码D:\WWWROOT
61 进入 D:\SVN\wapzucom\hooks 建立 post-commitbat 文件
编辑其内容 为"C:\Program Files\VisualSVN Server\bin\svnexe" update "D:\www\test" --quiet --username name --password pwd
或者可参考下面这段话:
接下来最关键的一步是,我们需要找到服务器上安装的版本库的路径下面,以版本库名称命名的文件夹下,有一个名字为hooks的文件夹,在这个文件夹下建立post-commitbat这样一个批处理文件,里面的内容如下:
@echo off
“D:\VisualSVN Server\bin\svnexe” update “D:\Apache Software Foundation\Apache22\htdocs\soupei360″ _username XXXXX _password XXXXX
update前面的路径,是SVN服务器端程序的执行文件路径, 后面的是在服务器上同步到的目录的路径,username和password后面是刚才建立用户的用户名和密码,这段批处理的意思是,当我们在本地编写代码,然后通过svn的commit提交时候,首先提交到版本库中,然后版本库自动用这个批处理,把内容同步到服务器上之前指定的文件夹中,从而实现本地和远程同步操作。
两款SVN配置软件的具体配置教程可以通过搜索引擎得到具体设置方法,在此需要特意强调的是,一定要将本地和服务器上的目录都check out后,批处理才能够自动同步,服务器上的目标文件夹没有check out的话,即使设置的路径正确,也是不能同步的。
62 设置访问权限
我的电脑 右键 管理 服务和应用程序 服务 VisualSVN Server 右键 属性 登陆 添加访问权限 用系统管理员账号(我这里是user)
重启服务器
63测试Hooks工作是否正常
修改 indexphp 状态
提交修改
最后打开D:\WWWROOT\indexphp 可以发现代码已经被成功update
PS : 目录说明
C:\Program Files\VisualSVN Server 服务器安装目录
D:\SVN 仓库更目录
D:\WORKDIR 本地开发用的工作目录
D:\WWWROOT 服务器测试目录(Apache 指向该目录,即可实现工作目录内容修改后提交到SVN自动发布到测试目录)
一、通过SVN客户端向服务器上面添加项目
1、在服务器上面创建一个文件夹,文件夹以项目名称命名。
2、在合适目录下右击后,点击SVN Checkout,将你在服务器上面创建的目录checkout下来,然后将你在本地项目下的文件或目
录导入到此目录中,然后选中要提交的文件或目录,右击,选择“Add”,会在文件或目录上面显示了“+”号,然后右击,选择
“SVN Commit”,到此完成。
二、通过Eclipse向服务器上面添加项目
1、在Eclipse上右击项目,然后Team-->Share Project-->SVN,选择地址,选择“使用项目名称作为文件夹名”,往下一路到底,最后
会把项目添加上去,然后将项目目录下要提交的文件或目录,右击,直接选择“提交”即可。
SVN分客户端和服务器端,如果已经有SVN服务器了(比如公司已经架设了SVN服务器),那么你电脑上只要装客户端就可以了,最常用的客户端是TortoiseSVN,另外也有用于Eclipse的SVN插件,看你平时用SVN来做什么了。
如果没有服务器端,那就要自己架设SVN服务器,那么你的电脑上就客户端、服务器端都要安装,服务器端推荐Collabnet 的SVN Edge版服务器安装包,相对而言安装配置比较简单,自带服务器管理控制台,而且免费。
看我的百度文库,有SVN服务器架设与SVN使用相关的文档。
0条评论