您的位置:首页 > 运维架构 > Linux

linux下svn安装教程

2013-07-11 01:05 501 查看
linux下svn的安装通过tgz包进行,安装包可以通过论坛的下载中心获取。4
c" \3 S! k  Y7 N; C+ L2 B/ j
0 K- s' s: P% I1 F8 d
1. 以下为安装过程的命令行(需要root用户权限)::
w/ t& w% _1 a; E# m  s* ~

! `/ ^' {$ c. a7 O2 r8 M" K+ M

#tar –zxvf subversion-1.6.9.tar.gz% h9 N: U1 i' w  M& s

#cd subversion-1.6.9

# ./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache2/bin/apxs: M# \7 {8 W% W

#make# V5 T5 V' X+ \

#make install

复制代码
说明:. m! _+ w2 a0 g1 g* ?+ G: h. }' N
    (1) 
 先将svn的两个安装包进行解压
 
  (2)   到解压后的目录下
 
  (3)   配置svn安装时的相关设置,--prefix=/usr/local/subversion将svn指定安装到usr/local/subversion目录下,--with-apxs=/usr/local/apache2/bin/apxs会将svn的模块加载到apache中,这样才可以通过apache访问到svn代码库
 
 (4)   进行编译步骤
 
 (5)   进行安装步骤,将svn安装到制定的目录下
[align=left]
[/align]
[align=left]2、svn的相关配置[/align]
[align=left](1) 我们会将svn库通过svnadmin用户进行管理,因此需要先创建svnadmin用户,以下为创建命令。[/align]

#useradd svnadmin

复制代码

[align=left](2)由于svn是通过apache进行访问和控制的,需要对apache的配置文件进行设置。[/align]
[align=left]svn库的根目录为: /home/svnadmin/svnsources[/align]
[align=left]Svn的用户文件为: /home/svnadmin/svnfiles/svn-auth-file[/align]
[align=left]Svn的权限文件为: /home/svnadmin/svnfiles/svn-access-file[/align]
[align=left]因此需要打开apache的配置文件(/usr/local/apache2/conf/httpd.conf),进行如下配置[/align]
[align=left]找到第65行,将[/align]
[align=left]User daemon[/align]
[align=left]Group daemon[/align]
[align=left]改成:[/align]
[align=left]User svnadmin[/align]
[align=left]Group svnadmin[/align]
[align=left]然后在httpd.conf的最后面加上以下配置信息:[/align]
7 ?- S7 p& m3 m( ^

<Location /svn/>

     DAV svn

     SVNParentPath /home/svnadmin/svnsources/

     AuthType Basic% C$ U. T9 k) v8 h3 @1 i( i5 t

     AuthName "svn repository"2 s6 G  w9 B% T$ x

     AuthUserFile /home/svnadmin/svnfiles/svn-auth-file4 f; U+ v' d5 ~( O

     Satisfy Any2 W- |* Y, e" W$ w' W) ?

     Require valid-user ! F) T+ _3 h8 n" S  e0 E9 [

     AuthzSVNAccessFile /home/svnadmin/svnfiles/svn-access-file$ ?6 l! s" Y2 N1 @  y: d

</Location>

复制代码
* \9 ^( n" o" s
说明:(
l+ D4 N& e/ X, E0 p

+ H* ]' p" t/ ^- L

User和Group指定了apache启动时的执行用户,因为我们的svn库是通过svnadmin用户进行管理的,因此需要将apache的用户设置为svnadmin,保证可以通过apache访问到svn库。
<Location/svn/>:指定了访问svn的路径,后续创建完svn库时,我们都将通过http://linux服务器地址/svn/svn库名,来访问svn库。
SVNParentPath /home/svnadmin/svnsources/:指定svn库存放的根目录,后续都需要将svn库创建到此目录下,才可以访问到。
AuthUserFile  /home/svnadmin/svnfiles/svn-auth-file:指定存放svn用户的文件,svn用户都需要通过此文件进行创建。
AuthzSVNAccessFile /home/svnadmin/svnfiles/svn-access-file:指定用于配置svn权限的文件,具体可在此文件中设置svn各个库及其子目录的相关权限。* T8 v2 B, Z* z4 c! F

3、将svn的命令加入环境变量中,打开/etc/profile文件,找到  `'
\/ i$ u% L  n5 R& C7 ^8 T5 i6 p
export
PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC$ S/ c4 N! j, [% S! |0 l3 U" N- a
这一行,在这行上面加上:
PATH=/usr/local/subversion/bin:$PATH

4、设置完成后,重启apache服务器,接下去就可以在/home/svnadmin/svnsources/目录下创建svn库,并通过apache访问了。3
F' Z4 K+ d6 g% u- F2 Q
(1)创建一个test库:
x2 P) r0 q2 Z/ n6 z% H! K

#cd /home/svnadmin/svnsources/( U3 S8 u7 R3 y

#svnadmin create test

复制代码
(2)添加svn用户和权限& \+ H6 h7 T: u- H
以下命令添加test用户: /usr/local/apache2/bin/htpasswd /home/svnadmin/svnfiles/svn-auth-file test
如果没有home/svnadmin/svnfiles/svn-auth-file文件,可通过-c参数创建文件: /usr/local/apache2/bin/htpasswd -c svn-auth-file test.
f; s4 D% O3 E* f+ f3 Y% B7 \0 J: u

(3)编辑权限文件,对系统添加权限- v4 |# U4 \, w% L

打开/home/svnadmin/svnfiles/svn-access-file文件

添加下面几行:

8 V$ p  j( q; v, J3 e

[/]

* = r2 r3 q1 p" o& o1 Z( J3 R

test = wr

复制代码
* j- y2 j& V$ I  w4 P, N

以上的权限设置表示所有的svn库权限都可读,test账户可以读写。这里为了可以尽快熟悉svn的安装,没有详细说明svn的权限管理体系。想详细了解svn的权限管理,可点击链接查看:Subversion高级应用:SVN的多种认证方式4
r2 ~1 Z' T, Q4 I- H) t4 {

(4)设置完成后,就可以通过http://linux服务器地址/svn/svn库名 进行访问了,比如是linux服务器ip是192.168.0.100,可以通过http://192.168.0.100/svn/test 访问。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: