1. 程式人生 > >阿里雲 centos 7 安裝 svn 伺服器

阿里雲 centos 7 安裝 svn 伺服器

一、SVN 服務端搭建

1、安裝 svn

sudo yum install subversion

2 檢視版本

svnserve --version

輸出:

svnserve, version 1.7.14 (r1542130)
   compiled Apr 11 2018, 02:40:28

Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open
source software, see http://subversion.apache.org/ The following repository back-end (FS) modules are available: * fs_base : Module for working with a Berkeley DB repository. * fs_fs : Module for working with a plain file (FSFS) repository. Cyrus SASL authentication is available.

2、建立版本庫目錄

sudo
mkdir -p /home/svn sudo chmod -R 777 /home/svn cd /home/svn mkdir mcu

3,建立版本庫

cd  /home/svn/mcu
svnadmin create /home/svn/mcu/Atmege32U4_SparkFun_Breakout

cd Atmege32U4_SparkFun_Breakout/

4, 配置版本庫

cd  /home/svn/mcu/Atmege32U4_SparkFun_Breakout/conf/
修改檔案:svnserve.conf

這裡寫圖片描述

修改檔案:authz

這裡寫圖片描述

修改檔案:passwd

這裡寫圖片描述

5,設定阿里雲的SVN 伺服器埠 3690

SVN的預設埠是3690
其實是要設定阿里雲伺服器 ECS 中例項的“本例項安全組”才行

1、進入ECS控制檯:https://ecs.console.aliyun.com/
2、先找到我們購買的例項,然後在左側欄找到“網路和安全”—“安全組”,如下圖:

這裡寫圖片描述

點選“配置規則”

這裡寫圖片描述
3、點選“新增安全組規則”,
這裡寫圖片描述
新增3690號埠
這裡寫圖片描述

6 centos7 重啟 SVN 伺服器:

ps -ef |grep svn
sudo ps aux |grep 'svn'
sudo killall svnserve
sudo svnserve -d -r /home/svn

7,win7 連線 SVN 伺服器:

TortoiseSVN 1.9.3, Build 27038 - 64 Bit

svn://118.xxx.xxx.19/mcu/Atmege32U4_SparkFun_Breakout/

補充:

3.下面要修改這個目錄下的三個配置檔案(鍵值後面對不能有空格)
//進入剛剛建立的版本倉庫目錄
cd /svn/repos/first
//配置版本庫資訊和使用者檔案和使用者密碼檔案的路徑、版本庫路徑
vi svnserve.conf 
//把
# anon-access = read
# auth-access = write
# password-db = passwd
//這四行,前面的#號和空格去掉
//改成none
anon-access = none
auth-access = write
password-db = passwd
//改成自己的版本庫
realm = first
//儲存退出

(2)vi authz     //檔案,建立svn組和組使用者的許可權

[groups]
 //建立一個first的組,並制定兩個使用者ddl和shl
first = ddl,shl
//制定根目錄下的許可權
[/]
//first組使用者許可權為讀寫
@first = rw
//其他使用者只有讀許可權
* = r

//儲存退出

(3) vi passwd   //建立或修改使用者密碼

[users]
//使用者名稱為gep的使用者的密碼為123456
ddl = 123456
//。。。
shl = 123456

//儲存退出
設定自啟動

vi /etc/rc.local
開啟自啟動檔案, 檔案內容如下

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
// 新增下面一行
svnserve -d -r /usr/local/svnRepo/first
//儲存退出

SVN版本庫起動方式,現在svnRepo下面有 first、test 兩個版本庫
1:單版本庫起動

 svnserve -d -r /usr/local/repos/first

多版本庫起動

svnserve -d -r /usr/local/repos

區別在於起動svn時候的命令中的啟動引數-r指定的目錄。

限制不同的使用者對不同的版本庫操作許可權,修改版本庫中的conf目錄下的 authz檔案(鍵值後面對不能有空格)

以配置 first 版本庫為例

vi authz


[groups]

company = user1,user2

[first:/]             //指定版本庫跟目錄下的許可權

@company = rw     //company組使用者許可權為讀寫

* = r           //其他使用者只有讀許可權
//儲存退出



vi passwd //設定組中使用者的賬號和密碼

[users]

user1  = 123456

user2 = 123456