linux 配置svn独立服务器用于版本控制

1.首先下载subversion安装包之后解压,进入subversion目录

wget http://subversion.tigris.org/downloads/subversion-1.6.6.tar.gz

wget http://subversion.tigris.org/downloads/subversion-deps-1.6.6.tar.gz

tar xfvz subversion-1.6.6.tar.gz

tar xfvz subversion-deps-1.6.6.tar.gz

cd subversion-1.6.6

2.编译文件

编译所必须的软件包如果没有请自行安装。例如gcc,make等工具。

运行编译:

./configure --prefix=/usr/local/svn

3.进行安装

先执行以下操作:
(1)
、编辑ld.so.conf文件:

vi /etc/ld.so.conf

添加下面一行:

/usr/local/lib

(2)、保存后运行ldconfig

/sbin/ldconfig

make && make install

(3)安装完成,执行以下命令测试:

/usr/local/svn/bin/svnserve --version

为了方便下操作,下面将SVNBIN添加到PATH

vi /etc/profile

倒数第二行添加:

PATH=/usr/local/svn/bin:$PATH

保存后,使其立即生效:

source /etc/profile

4.配置svn
建立版本库目录,可建多个:

mkdir -p /home/svndata/repos

建立版本库:

svnadmin create /home/svndata/repos

修改版本库配置文件:

vi /home/svndata/repos/conf/svnserve.conf

[general]
anon-access = read
auth-access = write
password-db = /usr/local/svn/conf/passwd.conf
authz-db = /usr/local/svn/conf/authz.conf
realm = repos

其他的注释可以删除掉

5.建立密码文件和认证文件

/usr/local/svn/下面新建conf文件

并再/usr/local/svn/文件内新建passwd.confauthz.conf文件:

cd /usr/local/svn/

mkdir conf

touch passwd.conf

touch authz.conf

添加用户及密码:

vi /usr/local/svn/conf/passwd.conf

添加如下代码并保存:

[users]

clvalueDQ = 123456

svn       = 1234567

配置svn用户访问权限:

vi /usr/local/svn/conf/authz.conf

[groups]
admin=wll,svn
[/]
@admin = rw
[repos:/]
@admin=rw

svn配置完毕。

建立启动svn的用户:

useradd svn passwd svn

根据提示,为用户svn设置密码。
允许用户svn访问版本库:

chown -R svn:svn /home/svndata

启动svn

如果报错

svnserve: 不能绑定服务器套接字:地址已在使用

则先杀死进程

killallsvnserve

再启动

svnserve -d–listen-port 9999 -r /home/svndata

 

6.svn加入到开机启动

编辑rc.local文件:

vi /etc/rc.d/rc.local

加入如下启动命令:

/usr/local/svn/bin/svnserve -d --listen-port 9999 -r/home/svndata

 

7.连接SVN
安装TortoiseSVN,重启系统。
启动TortoiseSVN并在地址栏中输入svn://192.168.x.x:9999/repos
根据提示输入用户名与密码后就可以使用版本控制啦。

你可以在本地浏览器中输入网址192.168.x.x:9999/repos

Blog.itiwin.cn/repos

显示

( success ( 2 2 ( ) ( edit-pipeline svndiff1 absent-entriescommit-revprops depth log-revprops partial-replay ) ) )

 

8.开启权限验证

svn cosvn://192.168.3.109/repos –username wll –password 123456

显示:

 

———————————————————————–
ATTENTION! Your password for authentication realm:

<svn://192.168.3.109:3690>repos

can only bestored to disk unencrypted! You are advised to configure
your system so that Subversion can store passwords encrypted, if
possible. See the documentation for details.

You can avoidfuture appearances of this warning by setting the value
of the ‘store-plaintext-passwords’ option to either ‘yes’ or ‘no’ in
‘/root/.subversion/servers’.
———————————————————————–
保存未加密的密码(yes/no)?

选择yes

 

9注:

常见错误

(1).报错无法连接显示“ 目标机器积极拒绝,主要是防火墙的缘故

需要开启 9999端口编辑iptables

 

vi/etc/sysconfig/iptables

 

# Generatedby iptables-save v1.4.7 on Tue Jul 23 09:58:01 2013
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [2:80]
-A INPUT -p tcp -m tcp –dport 80 -j ACCEPT
-A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state –state NEW -m tcp –dport 22 -j ACCEPT
-A INPUT -ptcp -m state –state NEW -m tcp –dport 9999 -j ACCEPT
-A INPUT -j REJECT –reject-with icmp-host-prohibited
-A FORWARD -j REJECT –reject-with icmp-host-prohibited
COMMIT
# Completed on Tue Jul 23 09:58:01 2013

保存后重启防火墙
[root@localhost conf]# service iptables restart

 

(2)出现 svn: Invalid authz configuration 或者 svn:认证功能失败

此处多为authz.conf文件的错误和svnserve.conf文件的错误

vi /usr/local/svn/conf/authz.conf

[groups]
admin=wll,svn
[/] #
不要有空格
@admin = rw
[repos:/]
@admin=rw

 

vi/home/svndata/repos/conf/svnserve.conf

[general]
anon-access = read#
不要有空格
auth-access = write#
不要有空格
password-db = /usr/local/svn/conf/passwd.conf
authz-db = /usr/local/svn/conf/authz.conf
realm = repos

 

格式保存好后在认证

svn cosvn://192.168.3.109:9999/repos

依次输入密码

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值