• 【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出现。

    祝各位玩的顺利

  • 相关阅读:
    51 Nod 1086 多重背包问题(单调队列优化)
    51 Nod 1086 多重背包问题(二进制优化)
    51 Nod 1085 01背包问题
    poj 2559 Largest Rectangle(单调栈)
    51 Nod 1089 最长回文子串(Manacher算法)
    51 Nod N的阶乘的长度 (斯特林近似)
    51 Nod 1134 最长递增子序列(经典问题回顾)
    51 Nod 1020 逆序排列
    PCA-主成分分析(Principal components analysis)
    Python中cPickle
  • 原文地址:https://www.cnblogs.com/poiu-elab/p/3191656.html
Copyright © 2020-2023  润新知