Linux
系统
SVN
安装指导配置说明
1
安装
SVN
前检查:
检查是否安装
SVN
:
rpm -qa subversion
查看安装
SVN
版本信息:
svnserve --version
如果存在旧版本,卸载旧版本
SVN
:
yum remove subversion
2
安装
SVN
:
yum install subversion
3
代码库创建:
mkdir -p /opt/svn/repos
svnadmin create /opt/svn/repos
执行上面的命令后,自动建立
repos
库,查看
/opt/svn/repos
文件夹发现包含了
conf,
db,format,hooks, locks, README.txt
等文件,说明一个
SVN
库已经建立。
4
配置代码库:
进入上面生成的文件夹
conf
下,进行配置:
cd /opt/svn/repos/conf
1
)设置
SVN
用户及口令:修改文件
passwd
,如以下内容:
目的是设置哪些用户可以访问
SVN
资源库
[root@admin conf]# vi passwd
[users]
# harry = harryssecret
# sally = sallyssecret
#
用户名
=
密码
chenqian = chenqian
wangwu = wangwu
hello = 123
#
这样我们就建立了
3
个用户,其中有个用户为
hello
,
密码
123
,以上语句都必须顶格写
,
左侧不能留空格
,
否则会出错
.
2
)设置
SVN
用户访问权限控制:修改文件
authz
,如以下内容:
目的是设置哪些用户可以访问哪些目录,向
authz
文件追加以下内容:
[root@admin conf]# vi authz
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
admin = chenqian,wangwu
#
设置
[/]
代表根目录下所有的资源
[/]
或者写成
[repl:/]
@admin = rw
hello = r
#
意思是
admin
组中的
2
个用户对
repos
库下所有的目录有读写权限,
hello
只有可读权限,
当然也可以限定。以上语句都必须顶格写
,
左侧不能留空格
,
否则会出错
.
3
)设置服务配置文件:修改文件
svnserve.conf
,如以下内容:
[root@admin conf]# vi svnserve.conf
[general]
#
匿名访问的权限,可以是
read,write,none,
默认为
read
anon-access=none
#
使授权用户有写权限
auth-access=write
#
密码数据库的路径
password-db=passwd
#
访问控制文件
authz-db=authz
#
认证命名空间,
subversion
会在认证提示里显示,并且作为凭证缓存的关键字
realm=/opt/svn/repos
#
以上语句都必须顶格写
,
左侧不能留空格
,
否则会出错
.
5
启动
SVN
服务:
svnserve -d -r /opt/svn/repos
或者
/etc/init.d/svnserve restart
1
)带
-d
选项即可以作为一个单独的守护进程运行,
-r
选项可以指定发布哪个目录下的
版本库;
2
)一旦服务器运行,就在默认端口
3690
进行监听,使用
telnet
可以测试到
3690
端口已
经开放了,如下:
# telnet 127.0.0.1 3690
Trying 127.0.0.1...
Connected to Hinex.VM (127.0.0.1).
Escape character is '^]'.
( success ( 2 2 ( ) ( edit-pipeline svndiff1 absent-entries commit-revprops
depth log-revprops partial-replay ) ) )
3
)若需更改
SVN
服务默认端口
:
查看端口使用情况:
netstat -antp
启动
svn
和指定端口的方法是:
svnserve -d --list-port 3700 -r /opt/svn/repos
6
查看
SVN
服务是否正常:
ps -ef|grep svn
或者
ps aux|grep svn
7
SVN
客户端
TortoiseSVN
连接访问服务端地址:
svn://ip/repos
记得让防火墙放过
3690
端口哦
,
不然无法访问
,svn
的默认端口是
3690.
此外
,如果需要将一个
svn
服务器中的版本库移植到另外一台
svn
服务器上,可以直接将原版
本库中
db
文件夹中的内容全部复制到新
svn
服务器相应版本库目录下即可,还要注意两个
svn
服务器所运行的
svn
版本,不同版本可能会出现不兼容情况。