zoukankan      html  css  js  c++  java
  • 【Umezawa's Jitte】真正用起来svn来管理版本

    之前用过一次 但是没有真正的用起来 只是知道了一些基本概念

    好了 决定开始真正的用这个svn了

    参考大神http://www.cnblogs.com/wrmfw/archive/2011/09/08/2170465.html

    搞来搞去发现其实是建立一个svn之后把每个项目都装在这个svn目录下的不同文件夹里(也是试出来的小领悟)

    一切以实例为主,开始吧

    我的svn目录建在 /home/user/svn/下

    则先建立了这个文件夹后,在这下面建立svn目录结构

    mkdir /home/user/svn
    svnadmin create --fs-type fsfs /home/user/svn

    之后,我以管理两个项目为例,一个叫pro_1,一个叫pro_2,他们分别在/home/user/projects/pro_1和/home/user/projects/pro_2下面。

    svn mkdir file:///home/user/svn/pro_1 -m "Initial create pro_1 directory"
    svn import /home/projects/pro_1 file:///home/user/svn/pro_1 -m "Initial import pro_1"
    svn mkdir file:///home/user/svn/pro_2 -m "Initial create pro_2 directory"
    svn import /home/projects/pro_2 file:///home/user/svn/pro_2 -m "Initial import pro_2"

    这里有个小细节,就是在import的时候,是将pro_1/pro_2下的文件进行import,所以需要事先建好文件夹来import。

    接着这两个文件已经搞定了,来开始配置不同文件的访问权限。在/home/user/svn下找到conf文件夹,下面开始来。

    先改svnserve.conf,去掉所有有效的注释行,就可以了

    ### This file controls the configuration of the svnserve daemon, if you
    ### use it to allow access to this repository.  (If you only allow
    ### access through http: and/or file: URLs, then this file is
    ### irrelevant.)
    
    ### Visit http://subversion.tigris.org/ for more information.
    
    [general]
    ### These options control access to the repository for unauthenticated
    ### and authenticated users.  Valid values are "write", "read",
    ### and "none".  The sample settings below are the defaults.
    anon-access = read
    auth-access = write
    ### The password-db option controls the location of the password
    ### database file.  Unless you specify a path starting with a /,
    ### the file's location is relative to the conf directory.
    ### Uncomment the line below to use the default password file.
    password-db = passwd
    ### The authz-db option controls the location of the authorization
    ### rules for path-based access control.  Unless you specify a path
    ### starting with a /, the file's location is relative to the conf
    ### directory.  If you don't specify an authz-db, no path-based access
    ### control is done.
    ### Uncomment the line below to use the default authorization file.
    authz-db = authz
    ### This option specifies the authentication realm of the repository.
    ### If two repositories have the same authentication realm, they should
    ### have the same password database, and vice versa.  The default realm
    ### is repository's uuid.
    realm = Welcome to my svn

    anon-access = read 代表的是未验证通过用户的权限;auth-access = write代表的是验证通过用户的权限;password-db = passwd代表的是用户名密码文件所在地址,通常就放在了conf文件夹下,就不用改了;authz-db = authz代表的是访问权限的配置文件所在地,默认也是在conf文件夹下,也默认不改,realm = Welcome to my svn就是默认的一个欢迎语,在访问的时候会出现,随意。

    接着,来搞passwd

    ### This file is an example password file for svnserve.
    ### Its format is similar to that of svnserve.conf. As shown in the
    ### example below it contains one section labelled [users].
    ### The name and password for each user follow, one account per line.
    
    [users]
    root = root
    tom = tom
    helen = helen

    大概就是这个意思,再来看authz

    ### This file is an example authorization file for svnserve.
    ### Its format is identical to that of mod_authz_svn authorization
    ### files.
    ### As shown below each section defines authorizations for the path and
    ### (optional) repository specified by the section name.
    ### The authorizations follow. An authorization line can refer to a
    ### single user, to a group of users defined in a special [groups]
    ### section, or to anyone using the '*' wildcard.  Each definition can
    ### grant read ('r') access, read-write ('rw') access, or no access
    ### ('').
    
    [groups]
    admin = root
    user0 = tom
    user1 = helen
    
    [/pro_1]
    @admin = rw
    @user0 = r
    * =
    
    [/pro_2]
    @admin = rw
    @user1 = r
    * =

    这里的pro_1和pro_2是根据马上的开启svn服务器的指令相关的,反正意思就是pro_1可以root和tom访问,pro_2可以root和helen访问。

    接下来开启svn服务器就好了

    svnserve -d -r /home/user/svn

    用户tom想要访问pro_1,则

    svn ls svn://172.25.31.153/pro_1

    好像第一次进入要输入用户名和密码,如果想要更换身份的话

    svn ls svn://172.25.31.153/pro_2 --username helen --password helen

    这个好像进入一次用这个用户名,接下来的访问都默认用这个身份,除非新的--username XXX --password XXX出现。

    祝各位玩的顺利

  • 相关阅读:
    eclipse如何添加User Library
    Json字符串取值
    日常发现的小工具
    java获取json数组格式中的值
    每日总结一个面试题
    linux下备份还原mysql某个库(完整版)
    linux下安装zookeeper教程
    redis安装及常用命令
    dubbo-admin安装使用
    前端框架 一周使用经验积累
  • 原文地址:https://www.cnblogs.com/poiu-elab/p/3191656.html
Copyright © 2011-2022 走看看