Exported from Notepad++
Linux下安装SVN,仓库创建,用户权限管理
1.SVN安装
Ubuntu系统下安装:sudoapt-getinstallsubversion
源码安装:1.下载:archive.apache.org/dist/subversion
2.解压:tarxvfsubversion-0.19.1.tar.gz
3.移动:sudomvsubversion-0.19.1/usr/svn
4.进入:/usr/svn,配置:./configure--prefix=/usr/svn
5.编译:make
6.安装:makeinstall
7.设置环境变量:vi /etc/profile
加入:exportPATH=/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
foreachfunctionitappearsin
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目录下添加必须的配置文件
confdbformathookslocksREADME.txt
conf中的四个配置文件:authzhooks-env.tmplpasswdsvnserve.conf
svnserve.conf #svn版本库配置文件
passwd #svn用户配置
authz #权限配置
hooks-env.tmpl #环境变量配置实例
修改版本库配置文件:
visvnserve.conf配置如下:
[general]
anon-access=none #使非授权用户无法访问
auth-access=write #使授权用户有写权限
password-db=passwd #指明密码文件路径
authz-db=authz #访问控制文件
配置用户:vipasswd配置说明如下:
[users]
user1=123 #用户名=密码
user2=123 #用户名=密码
配置权限:viauthz常用配置说明如下:
[group]
group1=user1,user2 #组中用户与passwd中对应
[repo1:/]
user1=rw #单用户
@group1=rw #@表示组
*=r #表示所有用户
仓库下目录配置
[repo1:/folder1] #仓库下的folder1目录,权限配置与上面相同
启动服务:svnserve-d-r/usr/svn/svndata(注:服务启动的路径为仓库路径
或者仓库上级路径都可以)
访问版本库:svn://ip/repo1
对版本库进行检出操作(下载):svncheckoutsvn://ip/repo1 --username=user01
查看文件状态:svnstatus
添加文件:svnaddfile
提交:commit-m“注释”
3.多项目多仓库管理
创建公共配置文件,可以移动上例中的passwd,authz到svndata中
修改仓库配置文件svnserve.conf将用户与权限配置指向公共配置
配置权限加入多仓库配置
1.SVN安装
Ubuntu系统下安装:sudoapt-getinstallsubversion
源码安装:1.下载:archive.apache.org/dist/subversion
2.解压:tarxvfsubversion-0.19.1.tar.gz
3.移动:sudomvsubversion-0.19.1/usr/svn
4.进入:/usr/svn,配置:./configure--prefix=/usr/svn
5.编译:make
6.安装:makeinstall
7.设置环境变量:vi /etc/profile
加入:exportPATH=/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
foreachfunctionitappearsin
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目录下添加必须的配置文件
confdbformathookslocksREADME.txt
conf中的四个配置文件:authzhooks-env.tmplpasswdsvnserve.conf
svnserve.conf #svn版本库配置文件
passwd #svn用户配置
authz #权限配置
hooks-env.tmpl #环境变量配置实例
修改版本库配置文件:
visvnserve.conf配置如下:
[general]
anon-access=none #使非授权用户无法访问
auth-access=write #使授权用户有写权限
password-db=passwd #指明密码文件路径
authz-db=authz #访问控制文件
配置用户:vipasswd配置说明如下:
[users]
user1=123 #用户名=密码
user2=123 #用户名=密码
配置权限:viauthz常用配置说明如下:
[group]
group1=user1,user2 #组中用户与passwd中对应
[repo1:/]
user1=rw #单用户
@group1=rw #@表示组
*=r #表示所有用户
仓库下目录配置
[repo1:/folder1] #仓库下的folder1目录,权限配置与上面相同
启动服务:svnserve-d-r/usr/svn/svndata(注:服务启动的路径为仓库路径
或者仓库上级路径都可以)
访问版本库:svn://ip/repo1
对版本库进行检出操作(下载):svncheckoutsvn://ip/repo1 --username=user01
查看文件状态:svnstatus
添加文件:svnaddfile
提交:commit-m“注释”
3.多项目多仓库管理
创建公共配置文件,可以移动上例中的passwd,authz到svndata中
修改仓库配置文件svnserve.conf将用户与权限配置指向公共配置
配置权限加入多仓库配置