linux搭建svn版本控制器

来源:互联网 发布:mac的safari无法关闭 编辑:程序博客网 时间:2024/05/17 00:58

安装步骤如下:

1、yum install subversion

2、输入rpm -ql subversion查看安装位置

3、创建svn版本库目录

mkdir -p /var/svn/svnrepos

 

4、创建版本库

svnadmin create /var/svn/svnrepos

5、进入conf目录(该svn版本库配置文件)

authz文件是分配用户组 权限控制文件

passwd是帐号密码文件

svnserve.confSVN服务配置文件

6、设置帐号密码

vi passwd

在[users]块中添加用户和密码,格式:帐号=密码,如a=a

1.                  创建用户组

vi authz

在末尾添加如下代码:

复制代码 代码如下:
[/]

wang=a,b,c

8、修改svnserve.conf文件

vi svnserve.conf

打开下面的几个注释:

anon-access= read #匿名用户可读

auth-access= write #授权用户可写

password-db= passwd #使用哪个文件作为账号文件

//authz-db= authz #使用哪个文件作为权限文件

realm= /var/svn/svnrepos # 认证空间名,版本库所在目录

9、启动svn版本库

svnserve-d -r /var/svn/

 

检出svn

svncheckout svn://localhost/需要检出的目录  /要检出的路径

更新版本

svnup

 

10自动更新

进入hooks目录

把post-commit.tpl文件重命名为post-commit

并增加以下代码:

#!/bin/sh
WEB=/home/data/o135
export LANG=en_US.UTF-8
svn update $WEB --username o135 --password 'o135123'

 

保存,退出。。

给予此脚本的权限:

chmod 777 post-commit

测试一下,看脚本是否有权限问题

./post-commit

以后每次客户端提交操作,就会自动运行该脚本。

#需要update的文件夹要先checkout

 

问题解决

注意事项:

vi svnserve.conf配置文件去注释后不能有空格

关闭防火墙

1. 积极拒绝 无法连接

原因:未启动服务

解决方案 :svnserve --help

启动服务器:

svnserve-d -r /var/svn

查看是否启动版本库

 ps -aux | grep svnserve

 

防火墙 关闭防火墙 service iptables stop

2. 认证失败

未分配用户

svnserve.conf配置文件

authz配置用户组 分配用户

passwd给用户分配密码

杀死服务重新启动

kill-9 (进程号)

启动服务器:

svnserve-d -r /var/svn


本地克隆地址svn://ip地址/版本库名称


  
0 0
原创粉丝点击