CentOS 6.8配置svn

前言

svn服务器是代码服务器,用于开发人员进行代码存储、同步、上传等操作的服务器,协同工作的同种工具。在这里我使用CentOS 6.8为示例进行配置。

配置环境

安装有CentOS 6.8的主机一台
可以使用ssh进行访问

配置步骤

  1. 配置ssh远程登录
    一般情况下,从主机厂商购买的服务器均会提供ssh远程访问,因此该步骤可以跳过。配置ssh远程登录是在ESXI或者某个虚拟机平台上如virtualbox, vmware, parallels等,安装好ssh client后是不允许远程访问的,因此需要编辑配置文件。
$ vi /etc/ssh/sshd_config
...
# PermitRootLogin yes        // 去掉前面的#号
...
# PasswordAuthentication yes    // 去掉前面的#号

保存退出,然后重启ssh

$ service sshd restart

防火墙开启22端口

$ vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT // 添加

保存退出,重启iptables

$ service iptables restart
  1. 安装svn服务端subversion
    查看subversion是否安装
$ rpm -qa | grep subversion
subversion-1.6.11-15.el6_7.x86_64

如果有以上回显,则不用安装,假如安装更高版本svn,先卸载后安装。

$ rpm -e [包名称]          // 卸载包
$ rpm -ivh [包名称]        // 安装包

如果没有以上回显,也可以通过yum进行安装

$ yum install subversion
  1. 创建仓库进行配置
    (1)创建文件夹为仓库根目录
$ mkdir -p /home/svn/repos        // /home/svn/repos为仓库根目录

(2)创建仓库

$ svnadmin create /home/svn/repos    // 在repos下创建仓库,下述warning可以忽略
  svnadmin: warning: cannot set LC_CTYPE locale
  svnadmin: warning: environment variable LC_CTYPE is UTF-8
  svnadmin: warning: please check that your locale name is correct
$ cd /home/svn/repos
$ ls
  README.txt  conf  db  format  hooks  locks

(3)配置svn仓库
配置文件存储在conf目录下,对authz、passwd和svnserve.conf进行配置。

$ cd conf
$ ls
  authz  passwd  svnserve.conf

a. 使用vi编辑器对authz进行编辑。

[groups]
manager = admin,jim
product = wangming,lihong
development = wangjian,liuhao,zhangyong
test = jenny,lily

[/]
@manager = rw
* =

[/eshop]
@manager = rw
@product = rw
@development = rw
@test = r
* =

这个配置文件的编辑是很重要的,涉及到分组用户以及仓库的访问权限,[group]为分组,某类用户分到某组,[/]为仓库根目录,[/eshop]为某个项目的仓库地址(使用svnadmin进行创建)。

b. 使用vi编辑器对passwd进行编辑

[users]
admin = 123456
jim = 123456
......

一行对应一个用户名和密码,依次进行编辑。

c. 使用vi编辑器对snvserve.conf进行编辑,指定authz和passwd。

......
# password-db = passwd      // 去掉前面的#号
......
# authz-db = authz        // 去掉前面的#号

d. 启动repos仓库

$ svnserve -d -r /home/svn --listen-port 12345

-d为生成守护进程,-r为指定repository,--listen-port为监听端口号,该端口号要在iptables打开。

  1. 使用tortoisesvn、cornerstone或其它svn工具进行连接。如下图使用cornerstone连接svn配置。


    CentOS 6.8配置svn_第1张图片
    Cornerstone连接svn配置
  2. 配置开机加载
    有两种方法,一种是写入到sh脚本中,然后加入到/etc/rc.local中,另外一种是直接写入到/etc/rc.local中
touch /var/lock/subsys/local
svnserve -d -r /home/svn --listen-port 12345

结束语

配置svn是运维技术中一项基本技能,由于其比较繁琐,隔一段时间后便会生疏,经常查阅这些,可以保证在添加和修改配置时能够很快的做好和生效,不耽误项目的进程。

你可能感兴趣的:(CentOS 6.8配置svn)