快速业务通道

Linux下搭建大型SNV平台

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-30
ldquo;俯视图”.

图 1. Subversion的架构

图中的一端是保存所有版本数据的Subversion版本库,另一端是Subvesion的客户程序,管理着所有版本数据的本地影射(称为“工作拷贝”),在这两极之间是各种各样的版本库访问(RA)层,某些使用电脑网络通过网络服务器访问版本库,某些则绕过网络服务器直接访问版本库.

Subversion的组件

安装好的Subversion由几个部分组成,下面将简单的介绍一下这些组件.下文的描述或许过于简略,不易理解,但不用担心—本书后面的章节中会用更多的内容来详细阐述这些组件.

svn

命令行客户端程序.

svnversion

此工具用来显示工作拷贝的状态(用术语来说,就是当前项目的修订版本).

svnlook

直接查看Subversion版本库的工具.

svnadmin

建立、调整和修复Subversion版本库的工具.

svndumpfilter

过滤Subversion版本库转储数据流的工具.

mod_dav_svn

Apache HTTP服务器的一个插件,使版本库可以通过网络访问.

svnserve

一个单独运行的服务器程序,可以作为守护进程或由SSH调用.这是另一种使版本库可以通过网络访问的方式.

svnsync

一个通过网络增量镜像版本库的程序.

如果已经正确完成了Subversion的安装,我们就可以开始我们的学习之旅了.在后面的两章中,我们将讲解如何使用Subversion的客户端程序svn. 拥有帝国一切,皆有可能。欢迎访问phome.net

服务配置

一个Subversion的版本库可以和客户端同时运行在同一个机器上,使用file:///访问,但是一个典型的Subversion设置应该包括一个单独的服务器,可以被办公室的所有客户端访问—或者有可能是整个世界.

本小节描述了怎样将一个Subversion的版本库暴露给远程客户端,我们会覆盖Subversion已存在的服务器机制,讨论各种方式的配置和使用.经过阅读本小节,你可以决定你需要哪种网络设置,并且明白怎样在你的主机上进行配置.

概述

Subversion的设计包括一个抽象的网络层,这意味着版本库可以通过各种服务器进程访问,客户端“版本库访问”的API允许程序员写出相关协议的插件,理论上讲,Subversion可以使用无限数量的网络协议实现,目前实践中只有两种服务器.

Apache是最流行的web服务器,通过使用mod_dav_svn模块,Apache可以访问版本库,并且可以使客户端使用HTTP的扩展协议WebDAV/DeltaV进行访问,Apache是一个非常易于扩展的web服务器,它提供了许多“易于获取的”特性,例如加密的SSL通讯,日志和与第三方工具的集成,以及内置的版本库web浏览功能.

在另一个角落是svnserve:一个更小,轻型的服务器程序,同客户端使用自定义的协议.协议是为Subversion专门设计的,并且是有状态的(不像HTTP),它提供了更快的网络操作—但也有一些代价.它只理解CRAM-MD5的认证,然而它非常易于配置,是开始使用Subversion的小团队的最佳选择.

第三个选择是使用SSH连接包裹的svnserve,尽管这个场景依然使用svnserve,它与传统的svnserve部署非常不同,SSH在多所有的通讯中使用加密方式,SSH也使用排他的认证,在服务器主机(svnserve与之不同,它包含了自己的私有用户帐号)上要有真实的系统帐户.,这些配置需要每个用户发起一个私有的临时svnserve进程,这与允许一组本地用户通过file://协议访问等同(从访问许可的视点).因此路径为基础的访问控制变得没有意义,每个用户都可以直接访问版本库. 拥有帝国一切,皆有可能。欢迎访问phome.net

下面是三种典型服务器部署的总结.

表 6.1.

特性

Apache mod_dav_svn

svnserve

svnserve over SSH

认证选项

HTTP(S) basic auth、X.509 certificates、LDAP、NTLM或任何Apache httpd已经具备的方式

CRAM-MD5

SSH

用户帐号选项

私有的''users''文件

私有的''users''文件

系统帐号

授权选项

可以授予整个版本库的读/写权限,也可以指定目录的.

可以授予整个版本库的读/写权限,也可以指定目录的.

只能对版本库整体赋予读/写权限

加密

通过可选的 SSL

SSH通道的

Logging

对每个HTTP请求记录完全的Apache日志,通过选项“高级”记录普通的客户端操作.

no logging

no logging

交互性

可以部分的被其他WebDAV客户端使用

只同svn客户端通讯

只同svn客户端通讯

Web浏览能力

有限的内置支持,或者通过第三方工具,如ViewVC

只有通过第三方工具,如 ViewVC

只有通过第三方工具,如 ViewVC

速度

有些慢

快一点

快一点

初始设置

有些复杂

极为简单

相当简单

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号