Linux下安装SVN,仓库创建,用户权限管理

Exported from Notepad++

 
 
 
 
 
Linux下安装SVN,仓库创建,用户权限管理

1.SVN安装


  Ubuntu系统下安装:sudo
apt-getinstallsubversion

  源码安装
:1.下载:archive.apache.org/dist/subversion

2.解压:tar
xvfsubversion-0.19.1.tar.gz

       

3.移动:sudo
mvsubversion-0.19.1/usr/svn

4.进入:
/usr/svn,配置:./configure--prefix=/usr/svn

    

5.编译:make


     

6.安装:make
install

     

7.设置环境变量:vi
  /etc/profile  
加入:export
PATH=/usr/svn/bin:$PATH

      

8.测试:svn
-h

可能依赖的安装包:


  gcc(gcc
/c++.x86_64)

  apr
(apr-devel.x86_64)

  apr
-util(apr-util-devel.x86_64)

  sqlite
(sqlite-devel.x86_64)

  zlib
(zlib-devel.x86_64)

编译,出现错误




make
[2]:Enteringdirectory `/usr/svn/apr/network_io/unix'
make
[3]:Enteringdirectory `/usr/svn/apr/network_io/unix'
/
bin/bash/usr/svn/apr/libtool--silent--mode=compilegcc-g-O2-pthread
-
DHAVE_CONFIG_H-D_REENTRANT-D_GNU_SOURCE
-
I../../include-I../../include/arch/unix
-
I../../include/arch/unix-csockopt.c&&touchsockopt.lo
sockopt
.c:Infunction'apr_socket_opt_set':
sockopt
.c:242:27:error:'SCTP_NODELAY'undeclared(firstuseinthisfunction)
optname
=SCTP_NODELAY;
^

sockopt
.c:242:27:note:eachundeclaredidentifierisreportedonlyonce
for
eachfunctionitappearsin
make
[3]:***[sockopt.lo]Error1
make
[3]:Leavingdirectory `/usr/svn/apr/network_io/unix'
make
[2]:***[all-recursive]Error1
make
[2]:Leavingdirectory `/usr/svn/apr/network_io/unix'
make
[1]:***[all-recursive]Error1
make
[1]:Leavingdirectory `/usr/svn/apr'
make
:***[external-all]Error1


2.SVN仓库的创建与配置


   1
.建立版本库目录:mkdir-p/usr/svn/svndata

   2
.建立版本库:svnadmincreate/usr/svndata/repo1

    执行该命令后自动在repos目录下添加必须的配置文件


      conf
dbformathookslocksREADME.txt

      conf中的四个配置文件:authz
hooks-env.tmplpasswdsvnserve.conf

       svnserve
.conf  #svn版本库配置文件

       passwd     
#svn用户配置

       authz      
#权限配置

       hooks
-env.tmpl  #环境变量配置实例

    修改版本库配置文件:


        vi
svnserve.conf配置如下:

        
[general]

        anon
-access=none    #使非授权用户无法访问

        auth
-access=write    #使授权用户有写权限

        password
-db=passwd  #指明密码文件路径

        authz
-db=authz     #访问控制文件

    配置用户:
vipasswd配置说明如下:

        
[users]

         user1
=123    #用户名=密码

         user2
=123    #用户名=密码

    配置权限:vi
authz常用配置说明如下:

        
[group]

        group1
=user1,user2  #组中用户与passwd中对应

        
[repo1:/]

        user1
=rw       #单用户

        @group1
=rw     #@表示组

        
*=r          #表示所有用户

        仓库下目录配置


        
[repo1:/folder1]    #仓库下的folder1目录,权限配置与上面相同
  启动服务:svnserve
-d-r/usr/svn/svndata(注:服务启动的路径为仓库路径
或者仓库上级路径都可以
)

  访问版本库:svn
://ip/repo1
对版本库进行检出操作(下载):svn
checkoutsvn://ip/repo1 --username=user01
  查看文件状态:svn
status

  添加文件:svn
addfile

  提交:commit
-m“注释”



3.多项目多仓库管理


  创建公共配置文件,可以移动上例中的passwd
,authz到svndata中

  修改仓库配置文件svnserve
.conf将用户与权限配置指向公共配置

  配置权限加入多仓库配置
原文地址:https://www.cnblogs.com/feige1314/p/8551011.html