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