最近几天把项目搬到另一台服务器上,之前使用的svn服务器就得重新搭建,我在搭建svn服务器时踩了好多的坑,现在把我的安装步骤写下来,为的就是让大家少在这上面踩坑。
安装步骤如下:
1:yum install subversion。(ubuntu:apt-get install subversion)
2:输入命令svn -h查看使用命令
3:创建svn版本库目录
mkdir -p /home/svn/test
4:创建版本库
svnadmin create /home/svn/test
执行了这个命令之后会在/home/svn/test目录下生成如下这些文件
5:进入conf目录(该svn版本库配置文件)
authz文件是权限控制文件
passwd是帐号密码文件
svnserve.conf SVN服务配置文件
6:设置帐号密码
vim passwd
在[users]块中添加用户和密码,格式:帐号=密码,如test=test
7:设置权限
vim authz
在末尾添加如下代码:
[/]
test=rw
意思是版本库的根目录test对其有读写权限,w只有读权限。
8:修改svnserve.conf文件
vim svnserve.conf
打开下面的几个注释:
anon-access = none
auth-access = write
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /home/svn/test #版本库所在目录
9:启动svn版本库
svnserve -d -r /home/svn
10:配置代码同步web目录
cd /home/svn/test/hooks
cp post-commit.tmpl post-commit
vim post-commit
11:配置代码
删除post-commit里的所有代码
写入如下代码:
#!/bin/sh
export LANG=en_US.UTF-8
cd /home/wwwroot/test/#这里的test目录是你的网站目录
svn update --username test --password test --no-auth-cache --non-interactive
12:配置网站目录
cd /home/wwwroot
svn co svn://你的服务器ip/test --username test --password test
这时候在你的wwwroot目录下生成一个test目录,这个目录对应你的web服务器上网站目录
13:测试svn
14:给网站目录读写权限
chmod 777 /home/wwwroot/test
15:给post-commit执行权限
chmod 777 /home/svn/test/hooks/post-commit
Comments : 0