svn-自己动手

第一章 安装

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

2. 上传以上两个文件到服务器上,解压。解压命令为: tar xfvz subversion-1.6.1.tar.gz tar xfvz subversion-deps-1.6.1.tar.gz 指令简介: tar 为解压命令, xfvz tar 命令的参数,用于解压 tar.gz 格式压缩的文件。

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

4. 进入解压子目录: 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. 添加环境变量 : vi /etc/profile 在文件最后加入 : SVNPATH=$PATH:/opt/subversion/bin export SVNPATH

9. 测试 SVN 是否安装成功 , 执行 : svnserve --version 如果显示版本信息 , 则安装成功 .

第二章 配置

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

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

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

3. 修改版本库配置文件 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. 配置用户 vi /opt/svndata/repos/conf/passwd.conf 输入以下内容: [users] username1 = password1 username2 = password2 可以添加多个,此为用户名密码对。

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

------------------------------------------------

启动svn服务后,就可以直接用客户端来上传了。

7. 启动服务 执行 svnserve –d –r /opt/svndata/repos/ 启动服务 , deamon 方式运行。 本系统采用 svnserve 方式 , 这是小团队项目的推荐方法 . 这种方法维护最少 , 配置最简单 . 指令简介:此指令用于启动 svn 服务, -d 指明以守护模式运行, svn 自动在 3690 端口监听。 3690 是默认端口,可以使用 “--listen-port=” 或者 “--listen-host=” 来指定其它端口。 -r 选项用来指定 svn 服务的根目录,这样用户就可以使用相对路径访问,而不用提供完整路径。 使用以下命令检出: (svnserver 方式 ) svn checkout svn://127.0.0.1/dir 以上为示例。 IP 需要根据具体情况调整, dir 为版本库路径,若在启动时已指定则可省略。 版本库信息在版本库文件夹里,所以要删除版本库只需要删除版本库所在的文件夹即可。 另外工作副本只是自己维护的文件夹,可以用 Windows 直接删掉,对别人没有影响。千万不要使用版本库的删除命令,否则版本库里的内容也会被删除。


 

端口被防火墙拦截

 

在开启了防火墙时,做如下设置,开启相关端口

修改 /etc/sysconfig/iptables 文件,添加以下内容:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT//必须放在上面防火墙规则中


 service iptables stop //防火墙停止
 

service iptables start//启用

 

设置 svn 库开机启动

 

1. 创建脚本

[root@localhost ~]# vi svn.sh

#!/bin/bash

svnserve -d --listen-port 3690 -r /opt/svndata/repos

     2. 添加可执行权限

命令行运行

#chmod +x /root/svn.sh

     3. 添加自动运行

     打开(vigedit /etc/rc.d/rc.local ,在最后添加一行内容如下:

/root/svn.sh

     保存退出。

     4. 检查

     重启服务器,使用 ps -ef 看看svn 进程是否启动了。

 


 

 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值