Linux下SVN+Apache简要安装记录

    技术2025-12-20  9

          网上有资料,但总有些许问题,因此自己记录下来。

     

    有些杂凑,但基本解决了所有问题,其他的可参见参考网页(见后,本文结构从网页1中梳理而来)

     

    一、下载安装APACHE2,安装文件能到官方网站 http:/www.apache.org下载.tar xvzf httd-2.2.16.tar.gz cd httpd-2.2.16 /安装APR和APR-UTIL cd srclib/apr ./buildconf ./configure --prefix=/opt/svn/data/apr make && make install cd ../apr-util ./buildconf ./configure --prefix=/opt/svn/data/apr --with-apr=/opt/svn/data/apr make && make install cd ../.. ./configure --enable-dav --prefix=/opt/svn/data/apache2 --with-apr=/opt/svn/data/apr --with-apr-util=/opt/svn/data/apr --enable-so --enable-rewrite make && make install二、安装subversion1。编译安装,安装文件能到官方网站 http:/www.subversion.org.cn下载.tar zvxf subversion-1.6.12.tar.gztar zvxf subversion-deps-1.6.12.tar.gzcd ./subversion-1.6.12./configure --prefix=/opt/svn/data/subversion --with-apr=/opt/svn/data/apr --with-apr-util=/opt/svn/data/apr --with-apxs=/opt/svn/data/apache2/bin/apxs make && make install    编译完成后会自动在 apache2/conf/httpd.conf 添加 LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so

    2。创建一个subversion版本库mkdir -p /opt/svn/data/svn/opt/svn/data/subversion/bin/svnadmin create /opt/svn/data/svn/MyProjectmkdir /opt/svn/data/svn/accessmkdir /opt/svn/data/svn/root1mkdir /opt/svn/data/svn/root23。修改svn版本库的设置文件vi /opt/svn/data/svn/MyProject/conf/svnserve.conf将[general]一行前面的"#"去掉,并且不能有空格符号。4。创建apache的认证用户和认证组/opt/svn/data/apache2/bin/htpasswd -cb /opt/svn/data/svn/access/http_auth_userfile admin admin/opt/svn/data/apache2/bin/htpasswd -b /opt/svn/data/svn/access/http_auth_userfile user01 user01/opt/svn/data/apache2/bin/htpasswd -b /opt/svn/data/svn/access/http_auth_userfile user02 user025。编辑subversion版本库权限控制文件   $> vi /opt/svn/data/svn/access/svn_auth_groups##subversion版本库组权限控制#[groups]MyProjects = user01,admin,user02[/]admin = rw[root1:/]usersgroup01 = rwusersgroup02 = r[root2:/]usersgroup01 = rusersgroup02 = rw$> vi /opt/svn/data/svn/access/http_auth_groupfile sys-users: liuliutech-users: you6。修改文件访问权限chown -R nobody /opt/svn/data/svnchmod -R 777 /opt/svn/data/svn三、在apache2的httpd.conf中加入以下代码: <Location /svn>

       DAV svn   SVNParentPath /opt/svn/data/svn   # our access control policy   AuthzSVNAccessFile /opt/svn/data/svn/access/svn_auth_groups   # how to authenticate a user or group   AuthType Basic   AuthName "Subversion repository"   AuthUserFile /opt/svn/data/svn/access/http_auth_userfile   AuthGroupFile /opt/svn/data/svn/access/http_auth_groupfile   Require group usersgroup01 usersgroup02</Location>

    四、启动subversion服务器/opt/svn/data/subversion/bin/svnserve -d -r /opt/svn/data/svn五、检查权限设置是否正确:能在浏览器的地址栏里直接输入http:/ip/svn/地址/版本库路径,会弹出一个验证窗口。六,导入版本库和取得一个版本库的拷贝svn import /opt/svn/data/sysadmin/README.txt http:/ip/svn/MyProject  (-m "initial import"? 注:我是直接用TortoiseSVN和eclipse插件访问的)备份以前的SVN库

    #svnadmin dump /data/svn/repos/MyProject/ > /root/tony.tang

    把备份出来的数据恢复到本地

    #svnadmin load /data/svn/repos/MyProject/ < /home/tony.tang

     

    参考资料:

    http://www.sudu.cn/info/html/edu/20060102/295979.html (lost and something wrong)

    http://blog.csdn.net/leishiwei/archive/2009/11/27/4888837.aspx(good but somehow complex)

    最新回复(0)