Linux上配置SVN

一、检查是否已经有svn

# svnserve --version
-bash: svnserve: command not found

二、安装
在Linux下安装的是subversion,直接用yum 安装即可

# yum install -y subversion

三、检查安装是否成功

# svnserve --version

svnserve, version 1.6.11 (r934486)
   compiled Aug 17 2015, 08:37:43

Copyright (C) 2000-2009 CollabNet.

四、创建svn资源仓库

# cd /var
# mkdir svn
# cd svn
# mkdir project

# svnadmin create /var/svn/project
# cd project
# ls
conf  db  format  hooks  locks  README.txt
# cd conf
# ls
authz  passwd  svnserve.conf

五、新增用户及密码,配置权限

  • authz 是权限控制文件
  • passwd 是帐号密码文件
  • svnserve.conf 是SVN服务配置文件
vim passwd 

[users]

test1=123456


# vim authz 

[/] 

test1=rw



vim svnserve.conf 

打开下面的5个注释 

anon-access = read #匿名用户可读,但是 子目录showlog 会报错Item is not readable

或者
anon-access = none #可以查看showlog

auth-access = write #授权用户可写

password-db = passwd #使用哪个文件作为账号文件 

authz-db = authz #使用哪个文件作为权限文件 

realm = /var/svn/project # 认证空间名,版本库所在目录
  • 最后一行的realm记得改成你的svn目录
  • 打开注释时切记前面不要留有空格

六、启动svn服务

# svnserve -d -r /var/svn

注意不要指定到具体的代码库目录

正确:svnserve -d -r /var/svn/  

错误:svnserve -d -r /var/svn/project

 

停止svn

# killall svnserve

上述启动命令中,-d表示守护进程, -r 表示在后台执行

停止还可以采用杀死进程的方式:
 

# ps -ef | grep svnserve

root 4908 1 0 21:32 ? 00:00:00 svnserve -d -r /var/svn 

root 4949 4822 0 22:05 pts/0 00:00:00 grep svnserve

# kill -9 4908

七、checkout 代码根目录

假如svn服务器的ip是192.168.1.120

1、在服务器上checkout

# svn checkout svn://192.168.1.120/project/ 
Checked out revision 0.

2、在本地客户端checkout

这里使用TortoiseSVN,输入地址svn://192.168.1.120/project/  即可

 

八、问题如果出现

Unable to connect to a repository at URL 'svn://192.168.1.120/project'

 

可能是端口问题导致无法成功checkout项目

1、打开阿里云控制台,看看有没有允许3690的端口

2、查看防火墙

查看防火墙状态:
# /etc/init.d/iptables status

编辑防火墙配置文件,添加一行3690端口记录
# vim /etc/sysconfig/iptables

-A INPUT -p tcp -m tcp --dport 3690 -j ACCEPT

重启iptables:
# /etc/init.d/iptables restart

九、多个项目时

mkdir /var/svn/conf
//把两个权限配置文件复制到 /var/svn/conf路径下统一管理所有代码仓库
cd /projcet1/conf
cp authz passwd /var/svn/conf

5.修改配置文件
vi svnserve.conf
打开下面的几个注释(同时要删除#后面的空格):
anon-access = none
auth-access = write #授权用户可写
password-db = /var/svn/conf/passwd #使用哪个文件作为账号文件 统一使用密码文件
authz-db = /var/svn/conf/authz #使用哪个文件作为权限文件

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值