阿里雲 centos 7 安裝 svn 伺服器
阿新 • • 發佈:2019-02-19
一、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