关于Subversion的安装、配置和权限管理
SubVersion 安装
Subversion 是一个版本控制系统,它是根据 CVS的功能为基础来设计,但是改进了一些 CVS 的缺点,例如:在 CVS 中搬移档案目录很不方便,Subversion 则连目录的移动都纳入版本管理;此外,它也增加了其它的功能,例如:不可分割的送交(如同数据库交易的概念,送交多个档案时,若有任何一个档案失败,则这次送交的所有档案都不会进入档案库中)、支持多种网络协议(file、HTTP、HTTPS、SVN)、一致的档案差异比对(不管什么档案类型,均使用二进制差异比对方式)等。Subversion是一个自由、开放源码的版本控制系统。它是一个通用系统,可用来管理任何类型的文件, 其中包括程序源码。 STRONG> 1. 需要的安装文件
? httpd-2.0.*.tar.gz(http://www.apache.org)源代码包
? Subversion-1.0.*.tar.gz(http://subversion.tigris.org/)的源代码包
2. 编译安装httpd
# tar xvzf httpd-2.0.54.tar.gz //解压apache2安装包
# cd httpd-2.0.54 //进入解压后的目录
# ./configure --enable-dav--enable-so --prefix=/usr/local/apache2/
//配置apache安装,以上的前两个参数是必须要加的,你还可以根据您的需要添加其他的参数。后面的参数制定你要把apache安装哪里
# make
# make install //安装
# cd /usr/local/apache2/bin
# ./apachectl start //启动apache服务
打开浏览器http://localhost/如果有测试页出现则证明已经安装成功。
3. 安装Subversion
# tar xvzf Subversion-1.1.4.tar.gz //解压SubVersion安装包
# cd Subversion-1.1.4 //进入解压后的目录
#./configure--with-apxs=/usr/local/apache2/bin/apxs--prefix=/usr/local/subversion //配置subversion安装
# make
# make install //安装
# mkdir /usr/local/repository //创建库文件所在的目录
# cd /usr/local/subversion/bin //进入subversion的bin目录
# ./svnadmin create /usr/local /repository/test //创建仓库”test”
# cd /usr/local/repository/test
# ls –l //看看是不是多了些文件,如果是则说明Subversion安装成功了
# cd /usr/local/subversion/bin
# ./svn import /home/user/import file:/// usr/local /repository/test –m
‘注释’ //这条语句将把路径/home/user/import下找到的文件导入到你开始创建的Subversion 知识库中去。这条语句将把路径/home/user/import下找到的文件导入到你创建的Subversion 仓库中去,提交后的修订版为1。# chmod –R 777
/usr/local/repository/test //不要忘了让每个人都有使用权限
4. 修改Apache配置文件
# cd /usr/local/apadche2/bin
# ./apachect1 start //起动Apache
# vi /usr/local/apache2/conf/httpd.conf //在下面添加
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /usr/local/repository/ //svn父目录
AuthzSVNAccessFile /usr/local/repository/authz.conf //权限配置文件
AuthType Basic //连接类型设置
AuthName "Subversion.zoneyump" //连接框提示
AuthUserFile /usr/local/repository/authfile //用户配置文件
Require valid-user //采用何种认证
</Location>
//其中authfile是通过"htpasswd [–c] /usr/local/repository/authfile username password"来创建的
//"Require valid-user
"告诉apache在authfile中所有的用户都可以访问。如果没有它,则只能第一个用户可以访问新建库# cd /usr/local/subversion