SVN在linux下的安装 学习

news/2024/12/23 2:24:11

SVN在linux下的安装

学习    2009-10-19 14:27   阅读102   评论0  
字号: 大   中   小
 apache + subversion for linux 安装

SVN是管理工程本版的必备工具,相对vss以及其前身cvs来说都有着无与伦比的优势

以下是apache+subversion服务端安装步骤:

一、准备好安装包:

①apr-1.3.6.tar.gz   下载地址:http://apr.apache.org/

②apr-util-1.3.8.tar.gz

③subversion-1.6.3.tar.gz  下载地址: http://subversion.tigris.org/

④subversion-deps-1.6.3.tar.gz

⑤httpd-2.2.9.tar.gz 下载地址:http://httpd.apache.org/

注意:apach的版本 与 subversion版本的兼容问题,官网都有介绍的

二、开始安装:把以上安装包上传至/usr/local目录,cd /usr/local 进入该目录

1、安装apr

      tar zxvf  apr-1.3.6.tar.gz #解压包

      cd apr-1.3.6

      ./configure

      make

      make install

2、安装apr-util

      tar zxvf apr-util-1.3.8.tar.gz

      cd apr-util-1.3.8

      ./configure --with-apr=/usr/local/apr

      make

      make install

3、安装 apache

      tar zxvf  httpd-2.2.9.tar.gz

      cd httpd-2.2.9

      ./configure --prefix=/usr/local/apache2.2.9 --enable-dav --enable-so --enable-maintainer-mode --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config  #--prefix表示把apache安装在指定目录

      make

      make install

4、安装subversion

      tar zxvf  subversion-1.6.3.tar.gz

      tar zxvf  subversion-deps-1.6.3.tar.gz

      cd subversion-1.6.3

      ./configure --prefix=/opt/svn --with-apxs=/usr/local/apache2.2.9/bin/apxs --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr

      make

      make install

      至此,安装基本完毕,再配置下就可以使用了

 

      注意:因为这些安装包需要gcc编译,所以要确保linux上装有gcc程序,否则是没办法进行安装的

 

 三、在apache中配置SVN

      vi /usr/local/apache2.2.9/conf/httpd.conf

     ① 如果你看到如下两句,说明安装是成功的

      LoadModule dav_svn_module     modules/mod_dav_svn.so
      LoadModule authz_svn_module   modules/mod_authz_svn.so

      如果有下面一句就用#注释掉

      #LoadModule foo_module modules/mod_foo.so

      
     ② 定义apache访问svn配置:
      <Location /svn>
              DAV  svn
      #      SVNPath /opt/svndata
              SVNParentPath /opt/svndata
              AuthzSVNAccessFile /opt/svn/conf/authz.conf
              AuthType Basic
              AuthName "Subversion repository"
              AuthUserFile /opt/svn/conf/passwd.conf
              Require valid-user
      </Location>

 四、配置svn

      ①建立svn版本库目录

      mkdir -p /opt/svndata/repos #可以多建版本库目录

      ②建立svn版本库

      svnadmin create /opt/svndata/repos

      mkdir -p /opt/svndata/repos #可以多建版本库

      ③建立本地访问控制文件

      /usr/local/apache2.2.9/bin/htpasswd -c /opt/svn/conf/passwd.conf  username

      然后输入密码即可,默认是MD5加密的

      /usr/local/apache2.2.9/bin/htpasswd  /opt/svn/conf/passwd.conf  username1 #追加用户

      ④建立本地项目控制文件

      touch /opt/svn/conf/authz.conf
      

      本例authz.conf内容为:

      

      [groups]
      #<groupname1>=<username1>,<username2>
      admin=username

      #[<versionLib>:projectName/directory]
      #@<groupsname>=<authorities>
      #<username>=<authorities>

      [/]
      @admin = rw      #指定用户组成员可以读写根目录所有应用

      [repos:/abc/aaa]
      username1= rw      #指定用户username1可以读写:/abc/aaa目录的文件

至此,整个安装过程完成了!

五、测试连接

     ① 启动apache

      /usr/local/apache2.2.9/bin/apachectl start

     ② 打开浏览器,输入http://192.168.1.107/svn/repos #本例服务器ip是192.168.1.107

      使用刚才创建的权限用户名与密码登录即可访问

      注意:在你上传文件的时候可能会有如下权限不足的提示

      Permission denied
      svn: Commit failed (details follow):
      svn: Can't create directory '/opt/svndata/repos/db/transactions/0-1.txn': Permission denied

      这是因为apache在线程用户没有权限访问svn的仓库,两者分别属于不同的用户者

      本例apache属于daemon拥有者,而svn仓库属于svn拥有者

      解决方法:

      chown -R daemon /opt/svndata/repos

      chmod -R 755 /opt/svndata/repos

    

       重启下apache:

       /usr/local/apache2.2.9/bin/apachectl stop

       /usr/local/apache2.2.9/bin/apachectl start

http://www.niftyadmin.cn/n/4159416.html

相关文章

NAT和端口映射的区别!!!

对于nat&#xff0c;每一个访问的建立&#xff0c;都会在防火墙上留下记录&#xff0c;比如192.168.1.50的12345端口复用了200.201.30.41的54321端口进行对新浪的访问&#xff0c;则防火墙会有一个对应的表&#xff1a;200.201.30.41:54321<——>192.168.1.50:12345&…

什么是hibernate懒加载?什么时候用懒加载?为什么要用懒加载?

所谓懒加载(lazy)就是延时加载&#xff0c;延迟加载。 什么时候用懒加载呢&#xff0c;我只能回答要用懒加载的时候就用懒加载。 至于为什么要用懒加载呢&#xff0c;就是当我们要访问的数据量过大时&#xff0c;明显用缓存不太合适&#xff0c; 因为内存容量有限 &#xff…

EasySysprep5系统封装教程

Easy Sysprep 是一款用于 Windows 操作系统系统部署专业工具&#xff0c;使用人群主要是企业的系统工程师和系统技术爱好者&#xff0c; 与 [自由天空驱动包] 结合成整套成熟可靠系统部署解决方案&#xff0c;这套解决方案可以提高 Windows 的部署效率&#xff0c;降低技术成本…

java 开发中 java的System.getProperty()方法可以获取的值

java.version Java 运行时环境版本 java.vendor Java 运行时环境供应商 java.vendor.url Java 供应商的 URL java.home Java 安装目录 java.vm.specification.version Java 虚拟机规范版本 java.vm.specification.vendor Java 虚拟机规范供应商 …

华为路由器AR1220-ES 通过web界面配置域内nat实现内网通过公网ip访问内部服务器

问题描述 Q:AR2200 web界面配置域内nat实现内网通过公网ip(加公网端口号)访问内部服务器 解决方案 A:web界面配置流程如下: 如果服务器和内网用户段,是同一个网段。 1.在“安全 > ACL > 高级ACL配置”下配置ACL规则:数据源为内网网段,目的为映射公网地址,动作允许 2…

js 控制空格

if(!(/^[^\s]{1,}$/.test(textValue))){ alert("请填写内容&#xff0c;不要包含空格字符&#xff01;"); return false; }

今天发现

今天搞了半天jstl不显示 感觉太奇怪了&#xff0c;平时框架也没有问题啊&#xff0c;在前台用${}也能显示啊。今天怎么就是不显示呢。也不报错&#xff0c;郁闷了半天&#xff0c;原来是tomcat的搞的怪&#xff0c;原来tomcat 5.0不支持core_r这样的jstl呢&#xff0c;哎&#…

linux 数据库安装

1、查看要求的安装包&#xff08;和RHEL4有点小区别&#xff09;rpm -q binutils compat-db control-center gcc gcc-c glibc glibc-common libstdc libstdc-devel make ksh sysstat libaio openmotif22 libXp rpm -ivh compat-dbrpm -ivh kernel-headersrpm -ivh glibc-heade…