- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于CentOS Linux搭建svn服务器在研发产品时的应用.doc
基于CentOS Linux搭建svn服务器在研发产品时的应用
【摘要】subversion(简称svn)是近几年崛起的版本管理软件,是cvs的接班人。目前绝大多数开源软件都使用svn作为代码版本管理软件,它可以有效的解决代码管理混乱、代码冲突、代码整合期间引发的bug和代码拥有者的权限控制。
【关键词】centos;Linux;svn;搭建服务器
1.引言
在高速发展的信息时代,人们对于高效率的开发越来越关注。当企业需要研发新产品时,市场部往往要求研发的周期越短越好,因为产品越早发布,在市场中的优势就越明显,因此研发周期就会尽量的缩短。但在短时间内要开发出新产品,就需要研发人员的协同工作。而在开发的周期中,研发人员增多,研发人员交付的文件就非常容易产生问题:(1)研发团队中的几个人同时对一个文件进行修改,最终发现修改的冲突而不得不放弃其他人的修改成果,造成了时间的浪费。(2)修改好的文件保存之后,又想把文件恢复到修改前的状态。(3)在自己的项目中发现了问题,想要分析问题是哪个文件版本产生的。(4)想比较一个文件不同版本时的区别。要解决这些问题,就需要一个比较好的版本控制工具,因此我们推荐svn。
2.svn的简介和工作原理
svn的工作方式是C/S模式,其中C为客户端,S为服务器端。svn服务器有两种运行方式:独立服务器和借助于apache,svn://或http://,svn客户端tortoisesvn。
svn的基本工作原理:在一台服务器上建立一个源代码库,库里可存放许多不同项目的源程序。由有源代码库管理员统一管理这些源程序。每个用户在使用源代码库之前,首先要把源代码库里项目文件下载到本地,然后用户可以在本地修改,修改完成后用svn命令进行提交,源代码库统一管理修改。svn版本控制解决了:(1)代码管理混乱;(2)解决代码冲突困难;(3)在代码整合期间引发bug;(4)无法对代码的拥有者进行权限控制;(5)项目不同版本的发布困难。
svn工作原理示意图如图1所示:
图1 svn工作原理图
subversion目录说明:
*dav目录:是提供apache与mod_dav_svn使用的目录,让他们存储内部数据
*db目录:就是所有版本控制的数据存放文件
*hooks目录:放置hook脚本文件的目录
*locks目录:用来放置subversion见艰苦锁定数据的目录,用来追踪存取文件库的客户端
*format文件:是一个文本文件,里面只放了一个整数。表示当前文件库配置的版本号
*conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等)
3.svn服务器搭建
系统环境CentOS 6.0最小化安装(关闭iptables和selinux)+ssh+yum
(1)安装必须的软件包:yum install subversion mysql-server httpd mod_dav_svn mod_perl sendmail wget gcc-c++ make unzip perl* ntsysv vim-enhanced
说明:
subversion(svn服务器)
httpd mod_dav_svn mod_perl(用于支持WEB方式管理SVN服务器)
sendmail(用于配置用户提交代码后发邮件提醒)
wget gcc-c++ make unzip perl*(必备软件包)
(2)基本的svn服务器配置
①新建一个目录用于存储SVN所有文件
# mkdir/home/svn
②新建一个版本仓库
# svnadmin create/home/svn/svntest
③初始化版本仓库中的目录
# mkdir temp temp/server temp/client temp/test(建立临时目录)
# svn import temp/file:///home/svn/svntest-m“初始化SVN目录”
# rm-rf temp(删除临时建立的目录)
④添加用户
要添加SVN用户非常简单,只需在/home/svn/svntest/conf/passwd文件添加一个形如“username=password”的条目就可以了。为了测试,我添加了如下内容:
[users]
pm=pm_pw
server_group=server_pw
client_group=client_pw
test_group=test_pw
⑤修改用户访问策略
/home/svn/svntest
文档评论(0)