当前位置: > Linux服务器 > SVN >

centos配置与使用svn服务器的方法详解

时间:2014-09-15 03:06来源:linux.it.net.cn 作者:it

centos下svn服务器的配置方法。

第一步,下载安装subversion
 

复制代码代码示例:
sudo yum install subversion

测试是否安装
 

复制代码代码示例:
svn --version

然后,开始svn的配置:
首先,创建版本库:
 

复制代码代码示例:
mkdir 版本库路径
svnadmin create 版本库路径

然后,开始配置用户名,密码,权限:
版本库下conf文件夹有如下文件
authz    passwd      svnserve.conf
authz文件是用来保存用户名的,在最后加上
 

复制代码代码示例:
[/]
username=rw
 

rw未权限,表示该用户有读写权限。

passwd是密码文件
在最后添加
 

复制代码代码示例:
username=password

svnserve.conf是配置文件
 

复制代码代码示例:
[general]
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
 

(其实只是把对应行的#号去掉)

配置完成,接下来该启动svn喽:svn默认端口是3690
svnserve -d -r 版本库路径 --listen-host 服务器地址

启动svnserve时出现cannot bind server socket:address already in use

解决方法:

方法一:找出svnserve id 杀死掉进程
 

复制代码代码示例:
netstat -ntlp
kill -9 id

方法二:重新指定一个端口号(默认端口3690)
svnserve -d --listen-port 3691 -r 版本库路径

测试是否启动成功:
ps -ef|grep svnserve
成功会显示:
Keli  7439 1  0 16:36 ? 00:00:00 svnserve -d -r /home/Keli/svnroot/ --listen-host 10.22.25.35

如果出现启动成功但是客户端无法访问的话,可能是因为linux的防火墙设定的,记住要开放默认的3690端口或者是自定义的端口

常用命令:
svn import [PATH] URL -m "message"
[PATH]为文件地址,URL为服务端上的地址
-m "message" 就是公告,一般得写上,不然会提醒出错
下同。
一般为:
svn import /home/....  svn://....../.. -m "jjjjjj"

svn help <command>
如svn help import 会出现帮助信息

svn commit [Path] URL -m " ..."   :更新本地文件到服务器
注意,此处的Path必须为从服务器checkout下来的地址
svn updata [Path] 
从服务器更新本地文件

svn checkout URL[@REV]... [PATH]  -m "..."
这个操作会产生本地的workspace,会从服务端下载指定的内容。
commit, update 操作等必须在workspace下才能使用

svn import [Path]  URL -m "...."
这个为导入操作

svn add [Path]  
此操作未告知svn要在版本库仲创建该文件。add之后必须commit才会生效。

svn delete URL -m "...."
删除服务器上的某个文件或者目录。只能一个一个删除。

(责任编辑:IT)
------分隔线----------------------------