zoukankan      html  css  js  c++  java
  • Linux-yum在线安装svn步骤

    yum -y install subversion httpd mod_dav_svn 使用yum命令安装svn(subversion),httpd(apache服务器)和svn在apache上的插件(mod_dav_svn)

    安装过程

    安装完成

    rpm -q subversion 查看svn安装信息

    svnserve --version 也可以使用svnserve 命令加选项的方式查看svn版本信息

    rm -rf /opt/svndata 先删除svndata这个目录和它的子目录
    mkdir -p /opt/svndata/oa 递归方式创建svn数据仓库oa目录
    svnadmin create /opt/svndata/oa 创建svn数据仓库oa版本库

    ls -l /opt/svndata/oa 查看oa版本库目录的长格式信息

    ls -l /opt/svndata/oa/conf 查看oa版本库目录中conf目录所有信息,这三个文件是用来控制svn权限的

    authz表示每个用户的权限设置信息

    passwd表示每个用户和密码存储信息

    svnserve.conf表示svn用户和权限的配置信息

    vim /opt/svndata/oa/conf/svnserve.conf 修改svnserve.conf文件

    1、为每一个工厂创建属于自己独立的用户和权限管理,注意:svn不识别配置文件中开头带空格的参数,下面这幅图是带空格开头的,这是错误的。

    2、为每一个工厂创建公用的用户和权限管理,注意:svn不识别配置文件中开头带空格的参数

    mkdir -p /opt/svn/conf/ 递归方式创建/opt/svn/conf目录
    cp -p /opt/svndata/oa/conf/authz /opt/svn/conf/authz.conf 复制/opt/svndata/oa/conf/authz文件到/opt/svn/conf/authz.conf,保留文件属性信息
    cp -p /opt/svndata/oa/conf/passwd /opt/svn/conf/passwd.conf 复制/opt/svndata/oa/conf/passwd文件到/opt/svn/conf/passwd.conf,保留文件属性信息
    ls -l /opt/svn/conf 查看/opt/svn/conf目录所有长格式信息

    vim /opt/svn/conf/passwd.conf 编辑用户配置文件passwd.conf
    注意:
    * 对用户配置文件的修改立即生效,不必重启svn。 文件格式如下: [users] <用户1> = <密码1> <用户2> = <密码2> 其中,[users]是必须的。下面列出要访问svn的用户,每个用户一行。示例: [users] wyp = wyppwd shuaige = shuaigepwd 为了简化配置,多个版本库共用1个权限配置文件/opt/svn/conf/passwd.conf。如有必要,也可以分开。

     

    配置svn用户访问权限vim /opt/svn/conf/authz.conf
    文件中定义用户组和版本库目录权限。
    注意:
    * 权限配置文件中出现的用户名必须已在用户配置文件中定义。
    * 对权限配置文件的修改立即生效,不必重启svn。
    用户组格式:
    [groups]
    <用户组名> = <用户1>,<用户2>
    其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。
    版本库目录格式:
    [<版本库>:/项目/目录]
    @<用户组名> = <权限>
    <用户名> = <权限>
    其中,方框号内部分可以有多种写法:
    /,表示根目录及以下。根目录是svnserve启动时指定的,我们指定为/opt/svndata。这样,/就是表示对全部版本库设置权限。
    oa:/,表示对版本库oa设置权限
    oa:/abc, ,表示对版本库erp中的abc项目设置权限
    oa:/abc/aaa, ,表示对版本库erp中的abc项目的aaa目录设置权限
    权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。
    权限可以是w、r、wr和空,空表示没有任何权限。
    示例:
    [groups]
    admin = wyp
    [/]
    @admin = rw 组admin设置读写权限
    * =  所有用户设置无权限
    [oa:/]
    @admin = rw
    wyp = rw
    [oa:/abc] meinv =  用户meinv设置无权限 [oa:/abc/aaa]
    shuaige = rw 用户shuaige设置读写权限

    svn配置完毕,删除无用文件 rm
    /opt/svndata/oa/conf/authz rm /opt/svndata/oa/conf/passwd
    vim /opt/svn/conf/authz.conf 编辑权限配置文件authz.conf

     

    svnserve -d -r /opt/svndata 启动svn服务器

    service iptables stop 临时关闭防火墙

    在windows系统中,D:创建oa目录,进入oa目录,右键菜单选择svn检出

    输入用户名和密码

    检出完成!

    在D:oa目录中创建abc目录,注意abc文件夹图标样式“?”,右键菜单选svn提交

    选"全部(A)",点"确定"按钮

    提交时需要输入用户名和密码之后,点"确定"按钮关闭认证窗口,点"确定"按钮关闭后面的提交窗口。

    查看abc文件加图标样式“对勾”。

    svn co svn://192.168.6.3/oa  连接SVN服务器,需要提示输入用户名和密码
    输入用户wyp和它的密码,看到获取oa版本库成功,说明大功告成啦。

    svn co svn://192.168.6.3/oa  连接SVN服务器,需要提示输入用户名和密码
    输入用户shuaige和它的密码,获取oa版本库失败,原因为shuaige没有获取oa的权限。

    svn co svn://192.168.6.3/oa/abc  测试服务器,需要输入密码

    输入用户wyp和它的密码,获取oa版本库的abc目录成功

    输入用户shuaige和它的密码,获取oa版本库的abc目录成功

    配置SVN服务器的HTTP支持
    cd /opt/svndata/oa/conf  切换到oa版本库的conf目录下
    vim PtoWP.pl 这个文件,或者直接复制这个文件到当前目录中,修改 "passwd.conf"为"/opt/svn/conf/passwd.conf"
     1 #!/usr/bin/perl
     2 
     3 use warnings;
     4 use strict;
     5 
     6 #open the svn passwd file
     7 open (FILE, "/opt/svn/conf/passwd.conf") or die ("Cannot open the passwd file!!!
    ");
     8 
     9 #clear the apache passwd file
    10 open (OUT_FILE, ">webpasswd") or die ("Cannot open the webpasswd file!!!
    ");
    11 close (OUT_FILE);
    12 
    13 #begin
    14 foreach (<FILE>) {
    15     if($_ =~ m/^[^#].*=/) {
    16         $_ =~ s/=//;
    17         `htpasswd -b webpasswd $_`;
    18     }
    19 }
    PtoWP.pl

    ./PtoWP.pl  执行这个文件,现在目录下会多一个webpasswd文件。

    cat webpasswd 查看webpasswd文件,注意密码是密文格式的

    vim /etc/httpd/conf/httpd.conf 修改httpd.conf,添加关于SVN服务器的内容,编辑/etc/httpd/conf/httpd.conf,在最后添加如下信息:
     1 <Location /oa>
     2     DAV svn
     3     SVNPath /opt/svndata/oa/
     4     AuthType Basic
     5     AuthName "svn for oa project"
     6     AuthUserFile /opt/svndata/oa/conf/webpasswd
     7     AuthzSVNAccessFile /opt/svndata/oa/conf/authz
     8     Satisfy all
     9     Require valid-user
    10 </Location>
    httpd.conf


    <Location /oa>表示在url地址是http://192.168.6.3/oa时访问的就是/opt/svndata/oa/ 。

    /opt/svndata/oa/表示我们要将svn的创库放在这个位置,当然你也可以放在其它位置。
    AuthUserFile /opt/svndata/oa/conf/webpasswd指明了svn用户信息文件是/opt/svndata/oa/conf/webpasswd 。修改后保存文件。

    service httpd restart 重新启动HTTPD服务器

    如果出现下图的情况,需要进一步设置

    rpm -ql httpd | grep httpd.conf 查找httpd.conf文件

    cat /etc/httpd/conf/httpd.conf | grep -n ServerName 查找ServerName字符串所在位置,显示行号

    vim /etc/httpd/conf/httpd.conf 编辑/etc/httpd/conf/httpd.conf这个文件

    输入:set nu回车显示行号,276G定位到276行,然后删除"#"号,取消这一行的注释

    service httpd restart 重新启动HTTPD服务器

    看到此图的结果,表示成功!

    在浏览器中输入http://192.168.6.3/oa/回车之后,输入用户名和密码之后,点“确定”按钮

    如果看到下图说明你的apache服务器还是缺少配置信息的修改,apache默认是不允许访问的

    cat /etc/httpd/conf/httpd.conf | grep -n Deny 查找Deny字符串并显示行号

    vim /etc/httpd/conf/httpd.conf 再次编辑httpd.conf文件,修改417行的代码,其它行都是注释不用管它

    修改前:

    修改后:

    cat /etc/httpd/conf/httpd.conf | grep -n Directory

    修改前:

    修改后:

    service httpd restart 重新启动HTTPD服务器

    配置http访问svn成功!

    转:http://www.cnblogs.com/wrmfw/archive/2011/09/08/2170465.html

  • 相关阅读:
    html框架
    head标签
    项目报错,tomcat中引起
    Eclipse中点击小猫提示Tomcat settings should be set in Tomcat Preference Page
    同一台电脑上安装两个tomcat服务器
    Java排序算法
    格式化系统日期
    九九乘法表
    Java实现给定字符串的倒序输出
    Eclipse警告:The serializable class XXX does not declare a static final serialVersionUID field of type long
  • 原文地址:https://www.cnblogs.com/qiyebao/p/4361225.html
Copyright © 2011-2022 走看看