详细CentOS-6.3安装配置SVN的方法
<p><strong>安装说明</strong></p>
<p>
系统环境:CentOS-6.3</p>
<p>
安装方式:yum install (源码安装容易产生版本兼容的问题)</p>
<p>
安装软件:系统自动下载SVN软件</p>
<p>
<strong>检查已安装版本 </strong></p>
<p>
#检查是否安装了低版本的SVN</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_188647">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># rpm -qa subversion</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
#卸载旧版本SVN</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_820590">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># yum remove subversion</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>安装SVN</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_447157">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>确认已安装了svn模块 </strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_877447">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># cd /etc/httpd/modules</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash spaces"> </code><code class="bash plain"></code><code class="bash comments"># ls | grep svn</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash spaces"> </code><code class="bash plain">mod_authz_svn.so</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash spaces"> </code><code class="bash plain">mod_dav_svn.so</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
验证安装</p>
<p>
检验已经安装的SVN版本信息</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_555435">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># svnserve --version</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<div class="jb51code">
<div>
<div class="syntaxhighlighterplain" id="highlighter_717012">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="plain plain">svnserve,版本 1.6.11 (r934486)</code>
</div>
<div class="line number2 index1 alt1">
</div>
<div class="line number3 index2 alt2">
</div>
<div class="line number4 index3 alt1">
<code class="plain plain">编译于 Jun 23 2012,00:44:03 </code>
</div>
<div class="line number5 index4 alt2">
</div>
<div class="line number6 index5 alt1">
</div>
<div class="line number7 index6 alt2">
<code class="plain plain">版权所有 (C) 2000-2009 CollabNet。 </code>
</div>
<div class="line number8 index7 alt1">
<code class="plain plain">Subversion 是开放源代码软件,请参阅 http://subversion.tigris.org/ 站点。 </code>
</div>
<div class="line number9 index8 alt2">
<code class="plain spaces"> </code><code class="plain plain">此产品包含由 CollabNet(http://www.Collab.Net/) 开发的软件。 </code>
</div>
<div class="line number10 index9 alt1">
</div>
<div class="line number11 index10 alt2">
<code class="plain plain">下列版本库后端(FS) 模块可用: </code>
</div>
<div class="line number12 index11 alt1">
</div>
<div class="line number13 index12 alt2">
<code class="plain plain">* fs_base : 模块只能操作BDB版本库。 </code>
</div>
<div class="line number14 index13 alt1">
<code class="plain plain">* fs_fs : 模块与文本文件(FSFS)版本库一起工作。 </code>
</div>
<div class="line number15 index14 alt2">
</div>
<div class="line number16 index15 alt1">
<code class="plain plain">Cyrus SASL 认证可用。</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>代码库创建 </strong></p>
<p>
SVN软件安装完成后还需要建立SVN库</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_569961">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># mkdir -p /opt/svn/repositories</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash spaces"> </code><code class="bash plain"></code><code class="bash comments"># svnadmin create /opt/svn/repositories</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
执行上面的命令后,自动建立repositories库,查看/opt/svn/repositories 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。</p>
<p>
<strong>配置代码库 </strong></p>
<p>
进入上面生成的文件夹conf下,进行配置</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_608736">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># cd /opt/svn/repositories/conf</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>用户密码passwd配置 </strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_530443">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># cd /opt/svn/repositories/conf</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash spaces"> </code><code class="bash plain"></code><code class="bash comments"># vi + passwd</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
修改passwd为以下内容:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_864049">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">[</code><code class="bash functions">users</code><code class="bash plain">]</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash spaces"> </code><code class="bash comments"># harry = harryssecret</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash spaces"> </code><code class="bash comments"># sally = sallyssecret</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash spaces"> </code><code class="bash plain">zhoulf=123456</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>权限控制authz配置 </strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_574227">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># vi + authz</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
目的是设置哪些用户可以访问哪些目录,向authz文件追加以下内容:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterplain" id="highlighter_457711">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="plain plain">#设置[/]代表根目录下所有的资源 </code>
</div>
<div class="line number2 index1 alt1">
<code class="plain plain">[/]</code>
</div>
<div class="line number3 index2 alt2">
<code class="plain plain">zhoulf=rw</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>服务svnserve.conf配置 </strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_323746">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># vi + svnserve.conf</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
追加以下内容:<br>
</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_415841">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code>
</div>
<div class="line number2 index1 alt1">
<code class="bash spaces"> </code><code class="bash comments">#匿名访问的权限,可以是read,write,none,默认为read</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash spaces"> </code><code class="bash plain">anon-access=none</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash spaces"> </code><code class="bash comments">#使授权用户有写权限 </code>
</div>
<div class="line number5 index4 alt2">
<code class="bash plain">auth-access=write</code>
</div>
<div class="line number6 index5 alt1">
<code class="bash spaces"> </code><code class="bash comments">#密码数据库的路径 </code>
</div>
<div class="line number7 index6 alt2">
<code class="bash plain">password-db=</code><code class="bash functions">passwd</code>
</div>
<div class="line number8 index7 alt1">
<code class="bash spaces"> </code><code class="bash comments">#访问控制文件 </code>
</div>
<div class="line number9 index8 alt2">
<code class="bash plain">authz-db=authz</code>
</div>
<div class="line number10 index9 alt1">
<code class="bash spaces"> </code><code class="bash comments">#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字 </code>
</div>
<div class="line number11 index10 alt2">
<code class="bash plain">realm=</code><code class="bash plain">/opt/svn/repositories</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>配置防火墙端口 </strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_572730">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># vi /etc/sysconfig/iptables</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
添加以下内容:</p>
<p>
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT</p>
<p>
保存后重启防火墙</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_631771">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># service iptables restart</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>启动SVN</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_86762">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">svnserve -d -r </code><code class="bash plain">/opt/svn/repositories</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>查看SVN进程 </strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_773427">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># ps -ef|grep svn|grep -v grep</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash spaces"> </code><code class="bash plain">root 12538 1 0 14:40 ? 00:00:00 svnserve -d -r </code><code class="bash plain">/opt/svn/repositories</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>检测SVN 端口 </strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_257191">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># netstat -ln |grep 3690</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash spaces"> </code><code class="bash plain">tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>停止重启SVN</strong></p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_839431">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># killall svnserve //停止 </code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain"></code><code class="bash comments"># svnserve -d -r /opt/svn/repositories // 启动</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>测试 </strong></p>
<p>
SVN服务已经启动,使用客户端测试连接。 </p>
<p>
客户端连接地址:svn://192.168.15.231</p>
<p>
用户名/密码: zhoulf/123456</p>
<p>
测试创建文件夹等操作。</p>
<p>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。</p>
<p>
原文链接:http://www.cnblogs.com/zhoulf/archive/2013/02/02/2889949.html</p>
頁:
[1]