您的位置:首页 > 运维架构 > Linux

Centos搭建SVN服务器三步曲

2014-10-12 12:44 399 查看
搭建SVN服务,有效的管理代码,以下三步可以快速搞定。

1、安装

#yum install subversion

判断是否安装成功

#subversion -v

svnserve, version 1.6.11 (r934486)

出现上面的提示,说明安装成功。

有了SVN软件后还需要建立SVN库。

#mkdir /opt/svn/repos

#svnadmin create /opt/svn/repos

执行上面的命令后,自动在repos下建立多个文件, 分别是conf, db,format,hooks, locks, README.txt。



2、配置

上面的操作很简单,几个命令就搞定, 下面的操作也不难。

进入上面生成的文件夹conf下,进行配置, 有以下几个文件authz, passwd, svnserve.conf

其中authz 是权限控制,可以设置哪些用户可以访问哪些目录, passwd是设置用户和密码的, svnserve是设置svn相关的操作。

2.1先设置passwd



[users]

# harry = harryssecret

# sally = sallyssecret

hello=123

用户名=密码

这样我们就建立了hello用户, 123密码

2.2 再设置权限authz

[/]

hello= rw

意思是hello用户对所有的目录有读写权限,当然也可以限定。

如果是自己用,就直接是读写吧。

2.3最后设定snvserv.conf

anon-access = none # 使非授权用户无法访问

auth-access = write # 使授权用户有写权限

password-db = password

authz-db = authz # 访问控制文件

realm = /opt/svn/repos # 认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。

采用默认配置. 以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

好了,通过以上配置,你的svn就可以了。

3、连接

启动svn: svnserve -d -r /opt/svn/repos

svn默认端口是3690
如果已经有svn在运行,可以换一个端口运行

svnserve -d -r /opt/svn/repos --listen-port 3391

这样同一台服务器可以运行多个svnserver

好了,启动成功后,就可以使用了。

建议采用TortoiseSVN, 连接地址为: svn://your server address (如果指定端口需要添加端口 :端口号)

连接后可以上传本地的文件,有效的管理你的代码。

svn 端口和常用命令

有效选项:

-d [--daemon] : 后台模式

--listen-port 参数 : 监听端口(后台模式)

--listen-host 参数 : 监听主机名或IP地址(后台模式)

--foreground : 在前台运行(调试时有用)

-h [--help] : 显示这个帮助

--version : 显示程序版本信息

-i [--inetd] : inetd 模式

-r [--root] 参数 : 服务根目录

-R [--read-only] : 强制只读成;优先于仓库配置文件

-t [--tunnel] : 隧道模式

--tunnel-user 参数 : 隧道用户名(模式是当前用户UID的名字)

-X [--listen-once] : 监听一次(调试时有用)

--pid-file 参数 : 将服务进程ID写入文件ARG中

--service : 作为windows服务运行(仅SCM)[/quote]

你可以用--listen-port 指定端口

在httpd.conf中,查找Listen 80,将80修改为你想要的端口,svn默认端口是3690

为svnserve 加上--listen-port参数,比如svnserve -d -r d:\svn --listen-port 81

你可以采用svn+apache组合搭建,既可以设置你想要的端口,还可以以WEB形式访问代码库

通过以上三步,可以快速的搭建起svn

SVN数据库迁移方法
版本库数据的移植:svnadmin dump、svnadmin load
导出:

$svnadmin dump repos > dumpfile //将指定的版本库导出成文件dumpfile

新建:

$svnadmin create newrepos

导入:

$svnadmin load newrepos < dumpfile
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: