思步网

查看: 107739|回复: 54
打印 上一主题 下一主题

[SVN] linux下svn安装

  [复制链接]
Linux下SVN安装配置



第一章 安装

1. 采用源文件编译安装。源文件共两个,为:
subversion-1.6.1.tar.gz (subversion 源文件)
subversion-deps-1.6.1.tar.gz (subversion依赖文件)
注意文件版本必须一致,否则很容易产生各种奇怪的问题.

2. 上传以上两个文件到服务器上,解压。解压命令为:








1

tar xfvz subversion-1.6.1.tar.gz





2

tar xfvz subversion-deps-1.6.1.tar.gz


指令简介:tar 为解压命令,xfvz为tar命令的参数,用于解压tar.gz格式压缩的文件。

3. 解压后生成 subversion-1.6.1 子目录,两个压缩包解压后都会自动放到此目录下,不用手动更改。

4. 进入解压子目录:






1

cd subversion-1.6.1


5. 执行 ./configure –prefix=/opt/subversion 进行配置设定并指明安装目录. 注意prefix前是两个减号. 默认不带BDB包, 所以默认使用的是FSFS模式. 若想使用BDB模式需另外下载BDB包.建议使用FSFS模式.两种模式比较参考以下链接:

http://doc.iusesvn.com/show-21-1.html

指令简介:configure命令用于检查安装平台和目标特征,prefix用于指定路径。

6. 执行 make 编译.

7. 执行 make install 安装.

8. 添加环境变量:






1

vi /etc/profile


在文件最后加入:
SVNPATH=$PATH:/opt/subversion/bin
export SVNPATH

9. 测试SVN是否安装成功,执行:






1

svnserve --version


如果显示版本信息, 则安装成功.

第二章 配置

本系统采用为每个项目单独建一版本库的策略。配置文件,密码文件,访问控制文件等都放在版本库的conf目录下。所以每次开始一个新项目都必须新建一个版本库,并重新配置各配置文件。还有很重要的一条,要求各组员重新配置客户端,包括服务器版本库路径,本地路径等信息。

1. 建立版本库目录(可建立多个,新建库后以下各项都需重新配置。注意区别安装目录与版本库目录,以下讲的都是版本库目录)






1

mkdir –p /opt/svndata/repos


2. 建立svn版本库(与上面目录对应)






1

svnadmin create /opt/svndata/repos


执行此命令后svn自动在repos目录下添加必须的配置文件.
注意:版本库不同于一般的文件夹, 直接在操作系统上新建文件无法被SVN识别, 必须使用import等命令将文件导入版本库.
此为svn内部指令,create用于新建版本库。请使用svn help查看详细说明。

3. 修改版本库配置文件






1

vi /opt/svndata/repos/conf/svnserve.conf


各参数功能在配置文件的注释中有说明, 此处配置如下:
[general]
anon-access = none # 使非授权用户无法访问
auth-access = write # 使授权用户有写权限
password-db = /opt/svndata/repos/conf/pwd.conf # 指明密码文件路径
authz-db = /opt/svndata/repos/conf/authz.conf # 访问控制文件
realm = /opt/svndata/repos # 认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。
其它采用默认配置. 各语句都必须顶格写, 左侧不能留空格, 否则会出错.
其中pwd.conf 与 authz.conf 在新建版本库时系统不会自动创建,需要自己创建。
指令简介:这是svn配置文件的格式,请按照以上格式书写。

4. 配置用户






1

vi /opt/svndata/repos/conf/pwd.conf


输入以下内容:
[users]
username1 = password1
username2 = password2
可以添加多个,此为用户名密码对。

5. 配置权限
vi /opt/svndata/repos/conf/authz.conf
指令简介:此配置文件采用“基于路径的授权”策略,中括号里指定路径,以下列出对各用户的授权。包括只读r,读写rw。没有列出的用户,则不允许访问。还可以对用户分组,具体请参考svn手册,以下是简单例子:
[/opt/svndata/repos]
user1 = rw
user2 = r

6. 使用import导入文件
新建好的版本库是空的,需要导入工作目录。






1

$ svnadmin create /usr/local/svn/newrepos





2

$ svnimport mytree file:///usr/local/svn/newrepos/some/project


但是在导入后,用来的目录树并没有转换成工作拷贝,为了开始工作,还是需要运行svn checkout导出一个工作拷贝。因为导入后,文件在版本库中是以特殊的形式存在db文件夹中的,不能以明文的方式查看。必须使用svn checkout导出工作副本(workcopy)才能以正常方式查看。






1

svn checkout file:///usr/local/svn/newrepos/some/project workcopy


7. 启动服务
执行svnserve –d –r /opt/svndata/repos/ 启动服务, 以deamon方式运行。
本系统采用svnserve方式, 这是小团队项目的推荐方法. 这种方法维护最少, 配置最简单.
指令简介:此指令用于启动svn服务,-d指明以守护模式运行,svn自动在3690端口监听。3690是默认端口,可以使用“–listen-port=”或者“–listen-host=”来指定其它端口。-r选项用来指定svn服务的根目录,这样用户就可以使用相对路径访问,而不用提供完整路径。
使用以下命令检出:(svnserver方式)






1

svn checkout svn://127.0.0.1/dir


以上为示例。IP需要根据具体情况调整,dir为版本库路径,若在启动时已指定则可省略。
版本库信息在版本库文件夹里,所以要删除版本库只需要删除版本库所在的文件夹即可。
另外工作副本只是自己维护的文件夹,可以用Windows直接删掉,对别人没有影响。千万不要使用版本库的删除命令,否则版本库里的内容也会被删除。
本文转载:http://www.cnblogs.com/xd502djj/archive/2011/01/21/1941404.html


上一篇:SVN安装配置与使用
[发帖际遇]: 一个袋子砸在了 头上, 赚了 1 (金) 金币. 幸运榜 / 衰神榜
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 支持支持 反对反对
回复 论坛版权

使用道具 举报

众里寻他千百度,蓦然回首在这里!
其实,很多情况下都是这样的,习惯就好。
很有见地的探讨,先收藏着~
很有借鉴意义,先收藏了,谢谢楼主。
很有借鉴意义,先收藏了,谢谢楼主。
其实,很多情况下都是这样的,习惯就好。
路过的帮顶
其实,很多情况下都是这样的,习惯就好。
看起来好像不错的样子
看起来好像不错的样子
支持,赞一个
学习下我只是路过,不发表意见……
很有见地的探讨,先收藏着~
路过的帮顶
您需要登录后才可以回帖 登录 | 注册

本版积分规则



思步组织思步科技|思步网|火花学堂|思步文库|思步问答|思步英才|天下心
© 2007 思步网 浙ICP备10212573号-4(首次备案号:浙ICP备07035264号)|邮箱:service#step365.com(将#换成@)|服务热线:0571-28827450
在线培训课程|求职招聘|思步文库|官方微信|手机APP|思步问答|微博平台|官方QQ群|交流论坛|软件工程透析|关于我们|申请友链|
点击这里给我发消息     点击这里给我发消息
思步 step365 过程改进 CMMI中文 质量保证 质量管理 流程体系 需求跟踪矩阵 敏捷开发 Scrum 软件度量 项目评审 全员改进 流程管理 人力资源 6sigma 信息安全 ISO27001认证 IT服务管理 ISO20000认证 ISO9000认证 软件测试 SQA 配置管理 IPD 软件工程 PMP认证 PMP试题 PMBOK中文 精益研发 agile 顾问式管理培训
返回顶部