1. 获得Subversion安装包
登陆Subversion中文站,可以获得Red Hat 8.0, 9, Red Hat Enterprise Linux 3, 4版本的Subversion下载
http://the.earth.li/pub/subversion/summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/
在此页面挑“姹竞抛钚碌睦诚略兀放到Linux服务器的目录下,如/tmp/svn/
2. 安装Subversion
使用 rpm -qa | grep subversion 命令查找安装过的版本,如果存在旧的版本,则删除之
rpm -e XXX --nodeps
然后安装下载的所有rpm包,如果提示冲突,可以把冲突的旧版本删除;如果提示依赖,可使用--nodeps参数强制安装
3. 建立版本库(Repository)
运行Subversion服务器需要首先要建立一个版本库(Repository),在安装了Subversion服务器之后,可以直接运行如下命令:
svnadmin create /opt/subversion/repos
就会在目录/opt/subversion/repos下创建一个版本库。
4. 配置用户和权限
修改配置文件/opt/subversion/repos/conf/svnserve.conf代码
#去掉#[general]前面的#号
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access = none
#认证用户的权限,可以是read,write,none,默认为write
auth-access = write
#密码数据库的路径,去掉前面的#
password-db = passwd
注意:所有的行都必须顶格,否则报错。
修改配置文件passwd。
代码
[users]
harry = harryssecret
sally = sallyssecret
注意
一定要去掉[users]前面的#,否则svn只能以匿名用户登录,客户端不会出现登录窗口,除非你的anon不为none,否则将返回一个错误。
这里的密码都是没有加密的。
5.运行独立服务器
5.1 对于单个代码仓库
启动命令
svnserve -d -r /opt/subversion/repos
如果你想绑定服务器IP,则:
svnserve -d -r /opt/subversion/repos --listen-host 192.168.12.12
其中-d表示在后台运行,-r指定服务器的根目录,这样访问服务器时就可以直接用svn://服务器ip来访问了。如果服务器有多ip的话--listen-host来指定监听的ip地址.
我们可以在svn客户端中通过svn://192.168.12.12来访问svn服务器,用户就是上述[users]所列出的用户。
5.2 对于多个代码仓库,在启动时也可以用-r选项来指定服务器根目录,但访问时需要写上每个仓库相对于svn根目录的相对路径.
比如,有两个代码仓库/opt/subversion/repos1 和/opt/subversion/repos2,则需要启动命令:
svnserve -d -r /opt/subversion --listen-host 192.168.12.12
那么在客户端访问时可以用svn://192.168.12.12/repo1和svn://192.168.12.12/repo2来分别访问两个项目
启动完成以后,我们可以用ps aux|grep svnserv来查看是否存在svnserve进程.
6. 开放服务器端口
svn默认端口是3690,你需要在防火墙上开放这个端口。
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT
/sbin/service iptables save
你也可以通过svnserve的--listen-port选项来指定一个已经开放的其他端口,不过这样的话客户端使用也必须加上端口,如svn://192.168.12.12:NNNN/.
svnserve -d -r /opt/subversion/repos --listen-host 192.168.12.12 --listen-port NNNN
7. 使用svn客户端导入项目
推荐使用客户端 http://tortoisesvn.tigris.org/
eclipse插件 http://subclipse.tigris.org/
打开Eclipse的帮助菜单菜单->软件更新-〉查找和安装->搜索要安装的新功能部件->导入站点
输入Eclipse update site URL: http://subclipse.tigris.org/update_1.2.x即可下载安装,使用时如使用CVS差不多。。
如果你想手动下载链接安装,可以点击这个链接:Zipped downloads: http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240
附:svnserve [选项]
有效选项:
-d [--daemon] : 后台模式
--listen-port arg : 监听端口(后台模式)
--listen-host arg : 监听主机名或IP地址(后台模式)
--foreground : 在前台运行(调试时有用)
-h [--help] : 显示这个帮助
--version : 显示版本信息
-i [--inetd] : inetd 模式
-r [--root] arg : 服务根目录
-R [--read-only] : 不赞成;使用档案库配置文件
-t [--tunnel] : 隧道模式
--tunnel-user arg : 隧道用户名(模式是当前用户UID的名字)
-T [--threads] : 使用线程代替进程
-X [--listen-once] : 监听一次(调试时有用)
参考链接:
http://blog.sina.com.cn/s/blog_55149fb70100a6h8.html
http://www.linuxeden.com/html/solution/20050729/22569.html