• SVN jsvnadmin 安装与基本使用


    1. jsvnadmin  介绍 
    https://code.google.com/p/jsvnadmin/

    Svn Admin是一个Java开发的管理Svn服务器的项目用户的web应用。安装好Svn服务器端好,把Svn Admin部署好,就可以通过web浏览器管理Svn的项目,管理项目的用户,管理项目的权限。使得管理配置Svn简便,再也不需要每次都到服务器手工修改配置文件。

    • 多数据库:Svn项目配置数据保存在数据库,支持所有数据库(默认MySQL/Oracle/SQL Server)。
    • 多操作系统:支持Window,Linux等操作系统。
    • 权限控制:管理员可以随意分配权限、项目管理员可以管理项目成员、成员只能查看和修改自己的密码。
    • 支持多项目、多用户、多用户组Group(默认带有“项目管理组”、“项目开发组”、“项目测试组”)。
    • 安全:密码加密保存。
    • 多协议:支持svn协议和http协议(从2.0开始支持Apache服务器单库方式,从3.0开始支持Apache多库方式)
    • 仓库浏览(从3.0.2开始)
    • 多语言(从3.0.2开始)

    2.svnadmin下载地址 
    https://jsvnadmin.googlecode.com/files/svnadmin-3.0.5.zip  ,解压后有svnadmin.war和db数据库文件

    3.安装MySQL,JDK,Tomcat,SVN

    安装Mysql   http://blog.csdn.net/zsg88/article/details/75269457

    安装JDK   http://blog.csdn.net/zsg88/article/details/75208710

    安装TOMCAT   http://blog.csdn.net/zsg88/article/details/74906718 

    安装SVN   http://blog.csdn.net/zsg88/article/details/75269156

    4. 安装Apache

    # yum install httpd httpd-devel 

    # service httpd start 

    # chkconfig httpd on  

    # vi /etc/httpd/conf/httpd.conf 

    找到 ServerName 并修改成 

    ServerName localhost:80

    防火墙中打开 80 端口: 

    # vi /etc/sysconfig/iptables 

    [java] view plain copy
     
    1. -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT   

    # service iptables restart

    5.安装mod_dav_svn模块,使用http协议访问svn

    # yum install mod_dav_svn

    重启apache

    # service httpd restart

    查看测试是否安装 svn 模块 

    # ls /etc/httpd/modules/ | grep svn

    6.创建 svn 库主目录(多库模式,一份配置文件管理多个库) 

    # mkdir /svn/  

     编辑 /etc/httpd/conf/httpd.conf 文件 

    # vi  /etc/httpd/conf/httpd.conf

    添加以下内容

    [html] view plain copy
     
    1. <Location /svn/>  
    2. DAV svn  
    3. SVNListParentPath on  
    4. SVNParentPath /svn  
    5. AuthType Basic  
    6. AuthName "subversion repository"  
    7. AuthUserFile /svn/passwd.http  
    8. AuthzSVNAccessFile /svn/authz  
    9. Require valid-user  
    10. </Location>  

    <Location /svn>中的"/svn"表示我们的svn的访问URL为"http://ip/svn"

    "DAV svn"表示使用"mod_dav_svn"模块,dav是一种http 1.1扩展协议,mod_dav_svn只是该协议的一种应用。

    SVNListParentPath on  多库特有

    SVNParentPath /svn  多版本库时的共同目录,与单版本的不同

    AuthName 表示输入用户名和密码时的提示信息

    AuthType 认证类型,这里我们使用基本的认证类型

    AuthUserFile 表示认证文件的位置,我们待会创建它。 passwd.http 和 jsvnadmin中使用的文件保持一致

    AuthzSVNAccessFile是权限控制文件,单个版本库可要可不要,多个版本库要设置不同版本库的权限。authz 和 jsvnadmin中使用的文件保持一致

    创建/svn/passwd.http和/svn/authz
    # touch /svn/passwd.http
    # touch /svn/authz
    重启apache
    # service httpd restart

    7.创建svnadmin数据库并导入相应数据(UTF-8编码)

    执行db/mysql5.sql 和db/lang/en.sql

    8 解压svnadmin.war 

    cd /usr/local/program/tomcat8/webapps

    unzip /home/zsg/Downloads/svnadmin.war -d svnadmin

    9.编辑jdbc配置文件

    # cd svnadmin/WEB-INF
    # vi jdbc.properties

    [java] view plain copy
     
    1. db=MySQL  
    2. #MySQL  
    3. MySQL.jdbc.driver=com.mysql.jdbc.Driver  
    4. MySQL.jdbc.url=jdbc:mysql://127.0.0.1:3306/svnadmin?characterEncoding=utf-8  
    5. MySQL.jdbc.username=root  
    6. MySQL.jdbc.password=123456  


    10.启动tomcat

    浏览器中打开:http://ip:端口/svnadmin/

    11 创建项目

    /svn/目录下会创建一个abc的SVN库目录。
    同时也会多出一个httpd.conf文件,内容就是我们步骤6中添加的内容。

    /svn/authz 授权文件中会多出如下内容:

    [java] view plain copy
     
    1. [aliases]  
    2. [groups]  
    3. abc_developer=  
    4. abc_manager=admin  
    5. abc_tester=  
    6.   
    7. [abc:/]  
    8. @abc_manager=rw  

    以上过程其实是调用了svn对应的命令做了相应的操作。

    12 配置库目录权限

    查看vi /etc/httpd/conf/httpd.conf

    我们发现,apache的用户是apache,用户组是apache

    我们需要给新建的工程目录给apache用户授予权限。

    # cd /svn
    # chown -R apache.apache abc
    # chmod -R 777 abc
    (如创建新库,需要对新建的库目录执行以上两步授权操作)
    关闭SELinux(Linux的访问控制)
    修改/etc/selinux/config 文件
    # vi /etc/selinux/config
    将SELINUX=enforcing改为SELINUX=disabled
    重启机器即可
    # reboot



    13 先安装SVN管理客户端TortoiseSVN

    http://tortoisesvn.net/downloads.html  (注意64位系统要安装64位版)

    安装后输入项目库地址,输入帐号密码

    14接下来可以对wusc_edu库进行相应的操作


    (1)
    用户组


    (2)
    用户


    (3)
    授权


    (4)
    导入项目

    引自 http://blog.csdn.net/RobertoHuang/article/details/55505879

  • 相关阅读:
    pyqt中使用matplotlib绘制动态曲线 – pythonic
    pyqt开发教程-搭建环境和开发示例
    QPointer很大程度上避免了野指针(使用if语句判断即可,类似于dynamic_cast),而且使用非常方便 good
    qt5集成libcurl实现tftp和ftp的方法一:搭建环境(五篇文章)
    终于懂了:两个UI组件同时在操作是不可能实现的
    c/s 自动升级(WebService)
    web form中自定义HttpHandler仿mvc
    eclipse plugin 导出插件包
    TaskTracker执行map或reduce任务的过程2
    Jquery多级菜单插件Slimmenu使用说明
  • 原文地址:https://www.cnblogs.com/pangguoming/p/7797216.html
Copyright © 2020-2023  润新知