Subversion的安装和配置

环境

宿主机:Windows7  VMware7.1

虚拟机:Fedora12 

在Fedora中安装Subversion,作为服务器端;

Windows7中安装TortoiseSVN,作为客户端。

 

Subversion是一个自由/开源的版本控制系统。支持多种操作系统,可以通过网络访问,也允许客户端与版本库运行在同一台机器上。

Subversion的组件包括:

svn              命令行客户端程序。

svnversion   此工具用来显示工作拷贝的状态(用术语来说,就是当前项目的修订版

本)。

svnlook      直接查看Subversion版本库的工具。

svnadmin     建立、调整和修复Subversion版本库的工具。

svndumpfilter     过滤Subversion版本库转储数据流的工具。

mod_dav_svn     Apache HTTP服务器的一个插件,使版本库可以通过网络访问。

svnserve       一个单独运行的服务器程序,可以作为守护进程或由SSH调用。这是另一种使版本库可以通过网络访问的方式。

svnsync       一个通过网络增量镜像版本库的程序。

 

 

安装Subversion

在Fedora上可以用yum包管理器安装:

 

#yum install subversion

 

在Subversion的网站(http://subversion.tigris.org)上还有其他操作系统的二进制包,也可以下载源码进行编译。

 

创建版本库

建立/root/svn目录,作为版本库目录,执行如下命令建立版本库:

# svnadmin create /root/svn
# ls
  conf/  db/  format  hooks/  locks/  README.txt 
 

 

导入数据

假设项目源码在/root/terminal目录下,在该文件夹中建立三个子目录:

branches  tags  trunk

保证branches和tags为空,将源代码全部放在trunk目录下,这三个目录不是必须的,但是subversion的习惯用法。运行svn import命令将其导入版本库中:

  

现在版本库中已经保存了目录中的数据。但是,直接查看版本库是看不到文件和目录的;它们存放在数据库之中。版本库的虚拟文件系统中则包含了一个名为terminal的顶级目录,其中依此保存了所有的数据。/root/terminal目录及里面的数据已经与subversion无关了,完全可以将其删除。

 

检出数据

建立一个空的/root/terminal目录,运行如下命令,将数据检出:

svn checkout file:///root/svn/terminal/trunk /root/terminal
 

Subversion的版本库可以和客户端运行在同一台机器里,用file:///访问。典型的应用是采用一个单独的服务器,这里使用subversion自带的svnserve。

 

配置svnserve

安装subversion后, 执行setup,在system server(系统服务)里可以看到svnserve,用空格选中它,系统启动时,svnserve就会自动运行。

用这种方式启动svnserve时,系统执行的是/etc/rc.d/init.d目录下的svnserve脚步,该脚本里定义了args变量,即执行时选择的参数:

 args=“--daemon --pid-file=${pidfile} $OPTIONS"

可以看到,svnserve是以守护进程的方式(--daemon)的方式执行的,可以在这里修改参数,加入--root参数,指定svn的虚拟根目录,这样会限制只输出指定目录下的版本库,将/root/svn设为版本库目录:

 args=“--daemon --root=/root/svn --pid-file=${pidfile} $OPTIONS

 

修改后需要重启服务。

 

配置访问权限

在版本库目录下的conf子目录下有三个文件:

  authz  passwd   svnserve.conf

 

svnserve.conf文件的[general]部分包括一些变量,他们默认都用#设为注释了,将如下几个变量前面的#和空格去掉:

anon-access = read     #匿名用户的权限为可读,如果想禁止匿名用户,设为none

auth-access = write    #认证用户的权限为可读可写

password-db = passwd   #版本库的用户名和密码存放在passwd文件

其他不需要的变量,不要修改。

 

passwd文件定义了用户名和密码,格式为:

[username] = [password]

文件的内容如下:

[users]

# harry = harryssecret

# sally = sallyssecret

 

 

检出数据

宿主机Windows7为客户端,安装有TortoiseSVN,使用如下URL检出数据:

svn://192.168.65.166/terminal/trunk

 

 

参考:

使用Subversion进行版本控制

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值