svn配置详解

 

Svn配置全过程
从网上下载源码包
#wget http://subversion.tigris.org/downloads/subversion-1.6.11.tar.gz
#wget http://subversion.tigris.org/downloads/subversion-deps-1.6.11.tar.gz
也可以从 http://archive.apache.org/dist/subversion/
获取最新版本
将包解压
tar zxvf subversion-1.6.11.tar.gz
tar zxvf subversion-deps-1.6.11.tar.g
 
进入安装目录
cd subversion-1.6.11
(先要安装 zlib,不然会在编译的时候报错)
cd zlib
./configure –prefix=/usr/local/zlib
Make
Make install
Cd ..
./configure --prefix=/usr/local/svn --with-zlib=/usr/local/zlib --without-berkeley-db
(--with-zlib要带上路径,不然也会报错,有的地方还会带上其他参数,个人觉得没有必要,具体可以去百度下 )
Make clean
Make
Make install
/etc/profile这个文件里开头加上PATH=$PATH:/usr/local/svn/bin
(有的参考资料还会加上 export PATH source /etc/profile,这里我也试过,不过会出问题,导致无法再登录。source /etc/profile是重载配置文件,又跳到开头,导致死循环)
 
Svn 服务器配置
建立 svn版本库目录
Mkdir –p /usr/local/svndata/repos
建立 svn版本库
Avnadmin create /usr/local/svndata/repos
 
修改 svn版本库的配置文件
Vi /usr/local/svndata/repos/conf/svnserve.conf
里面的内容为
[general]
anon-access = none
auth-access = write
password-db = /usr/local/svn/conf/pwd.conf
authz-db = /usr/local/svn/conf/authz.conf
realm = repos
(anon-access 指匿名访问的权限,可以是 read,write,none,默认为 read,这个建议配为 none
auth-access 指认证用户的权限,可以是 read,write,none,默认为 write
password-db 指密码数据库的路径,去掉前面的,存的是认证用户的用户名和密码,
username=passwd
authz-db 实现了以路径为基础的授权 ,也就是判断用户是否有操作对应路径的权限)
 
配置允许访问 svn用户
Mkdir –p /usr/local/svn/conf
Vi /usr/local/svn/conf/pwd.conf
文件格式如下:
[users]
<用户 1> = <密码 1>
<用户 2> = <密码 2>
其中, [users]是必须的。下面列出要访问 svn 的用户,每个用户一行。示例:
[users]
Houxiaobo = 123456
 
配置 svn用户访问权限
Vi /usr/local/svn/conf/authz.conf
用户组格式:
[groups]
<用户组名 > = <用户 1>,<用户 2>
其中, 1 个用户组可以包含 1 个或多个用户,用户间以逗号分隔。
版本库目录格式:
[<版本库 >:/项目/目录]
@<用户组名 > = <权限>
<用户名 > = <权限>
例如
 [groups]
admin = houxiaobo
[/]
@admin = rw
(权限没有 x,如果有的话,最后在导入的时候会出现一个错误Invalid authz configuration)
(也可以根据自己的需要多创建几个用户,这里只创建一个)
 
启动 svn
建立启动 svn的用户
Useradd svn
Passwd svn
(根据提示设置密码)
允许用户 svn访问版本库
Chown –R svn:svn /usr/local/svndata
Chown –R svn:svn /usr/local/data
 
启动 svn
svnserve -d -r /opt/svndata --listen-host 121.10.141.135
 
最后就可以从客户端登陆了
svn://121.10.141.135/repos1
然后输入账号密码就可以登录了

你可能感兴趣的:(linux,SVN,职场,休闲)