IT猫扑网:您身边最放心的安全下载站! 最新更新| 软件分类| 专题汇总| 手机版

您当前所在位置:IT猫扑网 > 操作系统 > LINUX > Linux下SVN安装配置记录

Linux下SVN安装配置记录

时间:2015-06-28 00:00 来源:IT猫扑网|http://www.itmop.com/ 作者:网管联盟 我要评论(0)

  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/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导入文件

  新建好的版本库是空的,需要导入工作目录。

  $ svnadmin create /usr/local/svn/newrepos

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

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

  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直接删掉,对别人没有影响。千万不要使用版本库的删除命令,否则版本库里的内容也会被删除。

  8,服务自动启动脚本

  01 #文件名svnserve,存入/etc/init.d下,root权限700

  02 #!/bin/sh

  03 # description: Svnserve auto start-stop script.

  04 # chkconfig: - 20 80

  05 #

  06 . /etc/init.d/functions

  07

  08 SVN_HOME=/usr/local/subversion/bin

  09 SVN_OWNER=svn

  10 if [ ! -f &$SVN_HOME/svnserve& ]

  11 then

  12     echo &svnserver startup: cannot start&

  13     exit

  14 fi

  15

  16 start() {

  17   $SVN_HOME/svnserve -d -r /root/svndata/dzpai

  18   echo &svnserve is runing... &

  19 }

  20

  21 stop() {

  22   killproc svnserve

  23   echo &svnserve is stoped&

  24 }

  25

  26 restart() {

  27   killproc svnserve

  28   echo &svnserve is stoped&

  29   $SVN_HOME/svnserve -d -r /root/svndata/dzpai

  30   echo &svnserve is runing... &

  31 }

  32

  33

  34 # See how we were called.

  35 case &$1& in

  36   start)

  37   start

  38   ;;

  39   stop)

  40   stop

  41   ;;

  42   restart)

  43   restart

  44   ;;

  45 esac

  这个脚本是可以正常工作的。

  chkconfig --add svnserve

  就可以ntsysv自由在启动项里进行设置了

关键词标签:Linux,SVN

相关阅读 安装红帽子RedHat Linux9.0操作系统教程 Tomcat9.0如何安装_Tomcat9.0环境变量配置方法 多种操作系统NTP客户端配置 Linux操作系统修改IP Linux实现SCSI硬盘热插拔及在线识别 Linux下用CDMA modem拨号上网

文章评论
发表评论

热门文章 安装红帽子RedHat Linux9.0操作系统教程 安装红帽子RedHat Linux9.0操作系统教程 Linux服务器:设计高性能网站架构-LLMP Linux服务器:设计高性能网站架构-LLMP 使用Clonezilla迁移到虚拟Linux环境 使用Clonezilla迁移到虚拟Linux环境 Linux上的MRTG流量监控中心 Linux上的MRTG流量监控中心 Linux 双网卡绑定一个IP原理及实现 Linux 双网卡绑定一个IP原理及实现 linux和windows等系统远程控制ubuntu桌面 linux和windows等系统远程控制ubuntu桌面

相关下载

人气排行 Linux下获取CPUID、硬盘序列号与MAC地址 dmidecode命令查看内存型号 linux tc实现ip流量限制 安装红帽子RedHat Linux9.0操作系统教程 linux下解压rar文件 lcx.exe、nc.exe、sc.exe入侵中的使用方法 Ubuntu linux 关机、重启、注销 命令 查看linux服务器硬盘IO读写负载 linux命令行浏览器的使用方法 Linux NFS服务固定端口及防火墙配置 U盘安装Ubuntu 10.04 Linux清除用户登录记录和命令历史方法