首先下载svn 软件
#wget
#wget
#tar -zxf subversion-deps-1.4.0.tar.gz
#tar -zxf subversion-1.4.0.tar.gz
#./configure --prefix=/opt/svn
#make clean
#make
#make install
#vi /etc/profile 在最后面加入这样的一句:
PATH=$PATH:/opt/svn/bin
export PATH
保存
用命令测试看看 是否成功
#cd /opt/svn/bin
[root@localhost bin]# ls
apr-config apu-config neon-config svn svnadmin svndumpfilter svnlook svnserve svnsync svnversion
[root@localhost bin]# ./svnserve -version
得到下面的情况说明安装好了
===============================================================================
svnserve: invalid option character: v
请使用“./svnserve help”以得到用法和帮助。
[root@localhost bin]# ./svnserve --version
svnserve,版本 1.4.0 (r21228)
编译于 Apr 18 2013,23:29:35
Copyright (C) 2000-2006 CollabNet.
Subversion is open source software, see
This product includes software developed by CollabNet ().
The following repository back-end (FS) modules are available:
* fs_fs : 模块与纯文本文件(FSFS)档案库一起工作。
===================================================================================
svn配置建立svn版本库目录可建多个:
[root@localhost opt]# mkdir -p /opt/svn001/re01
[root@localhost opt]# mkdir -p /opt/svn002/re02
[root@localhost bin]# pwd
/opt/svn/bin
建立svn版本库
[root@localhost bin]# ./svnadmin create /opt/svn001/re01/
[root@localhost bin]# ./svnadmin create /opt/svn002/re02/
========================================================
修改svn版本库配置文件版本库1:
[root@localhost opt]# vi svn001/re01/conf/svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = /opt/svn/conf/pwd.conf
authz-db = /opt/svn/conf/authz.conf
realm = re01
================================================
========================================================
修改svn版本库配置文件版本库2:
[root@localhost opt]# vi svn002/re02/conf/svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = /opt/svn/conf/pwd.conf
authz-db = /opt/svn/conf/authz.conf
realm = re02
================================================
配置允许访问的svn用户vi /opt/svn/conf/pwd.conf
------------------------------------------------------------------------
为了简化配置,2个版本库共用1个用户配置文件。如有必要,也可以分开。
注意:对用户配置文件的修改立即生效,不必重启svn。
文件格式如下:
[users]
<用户1> = <密码1>
<用户2> = <密码2>
其中,[users]是必须的。下面列出要访问svn的用户,每个用户一行。示例:
[users]
test01=test01
test02=test02
--------------------------------------------------------------------------
配置svn用户访问权限vi /opt/svn/conf/authz.conf
---------------------------------------------------------------
为了简化配置,多个版本库共用1个权限配置文件/opt/svn/conf/authz.conf。如有必要,也可以分开。文件中定义用户组和版本库目录权限。
注意:
* 权限配置文件中出现的用户名必须已在用户配置文件中定义。
* 对权限配置文件的修改立即生效,不必重启svn。
用户组格式:
[groups]
<用户组名> = <用户1>,<用户2>
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。
版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>
其中,方框号内部分可以有多种写法:
/,表示根目录及以下。根目录是svnserve启动时指定的,我们指定为/opt/svn001。这样,/就是表示对全部版本库设置权限。
re01:/,表示对版本库1设置权限
re02:/abc, ,表示对版本库2中的abc项目设置权限
re02:/abc/aaa, ,表示对版本库2中的abc项目的aaa目录设置权限
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。
例子:
[groups]
admin=test001
[/]
@admin=rw
[re01:/abc/aaa]
test002=rw
[re02:/pass]
test002=
svn配置完毕,删除无用文件
rm -rf/opt/svn001/re01/conf/authz
rm -rf /opt/svn001/re01/conf/passwd
rm -rf /opt/svn002/re02/conf/authz
rm -rf /opt/svn002/re02/conf/passwd
启动svn建立启动svn的用户useradd svn
[root@localhost conf]# useradd svn
[root@localhost conf]# passwd svn
允许用户svn访问版本库chown -R svn:svn /opt/svn00
chown -R svn:svn /opt/data
启动
[root@localhost bin]# su - svn -c "svnserve -d --listen-port 9999 -r /opt/svn001"
其中:
su - svn表示以用户svn的身份启动svn
-d表示以daemon方式(后台运行)运行
–listen-port 9999表示使用9999端口,可以换成你需要的端口。但注意,使用1024以下的端口需要root权限
-r /opt/svndata指定根目录是/opt/svndata
检查:
ps -ef|grep svnserve
[root@localhost bin]# ps -ef|grep svnserve
svn 23874 1 0 00:39 ? 00:00:00 svnserve -d --listen-port 9999 -r /opt/svn001
root 23877 3236 0 00:40 pts/0 00:00:00 grep svnserve
这样就是成功了
在服务器上面导入文件是这样导入的:
svn import -m "New import" filename file:///data/svn/xxxxx
在客户端连接是这样的:(默认端口的时候,不是默认端口的时候要加端口)
svn://IPADRR/svn
svn客户端工具下载地址:
阅读(1452) | 评论(0) | 转发(0) |