中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CentOS7中怎么安裝Subversion版本控制系統

發布時間:2022-02-17 09:53:47 來源:億速云 閱讀:184 作者:iii 欄目:開發技術

這篇“CentOS7中怎么安裝Subversion版本控制系統”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“CentOS7中怎么安裝Subversion版本控制系統”文章吧。

Subversion 就是一個自由/開源版本控制的軟件,它記錄你每次對數據倉庫的修改,并能使你找回某一個時刻修改的版本文件。它的核心就是數據倉庫,你需要把你的文件提交到數據倉庫,并更新數據倉庫的文件,及根據需要能通過版本找到當時的數據。

CentOS7中怎么安裝Subversion版本控制系統

因為項目需要在CentOS 7.4環境下搭建一個SVN服務器,但是CentOS里自帶的subversion版本只到1.7.14 CentOS7中怎么安裝Subversion版本控制系統

與Subversion官網8月10日發布的SVN 1.8.19, SVN 1.9.7相去甚遠,會嚴重影響SVN客戶端的使用,因此我們需要卸載掉自帶的Subversion,使用yum方式重新安裝Subversion最新版本

我們執行命令

yum remove subversion*

yum clean all

直接卸載subversion和相關庫包

但是當我們使用yum命令再安裝subversion時,發現CentOS自帶源的Subversion版本仍然是1.7.14 CentOS7中怎么安裝Subversion版本控制系統

說明從CentOS自帶源安裝Subversion最新版本此路不通,我們需要另行添加Repo源

參考https://tecadmin.net/install-subversion-1-8-on-centos-rhel/#一文,我們在

/etc/yum.repos.d目錄下添加subversion.repo文件,內容如下

[Subversion]
name=Wandisco SVN Repo
baseurl=http://opensource.wandisco.com/centos/$releasever/svn-1.9/RPMS/$basearch/
enabled=1
gpgcheck=0

由于我們這里安裝的是SVN1.9,在repo文件里配置的是svn-1.9,如果要安裝SVN1.8,可以改為svn-1.8

執行yum install -y subversion命令安裝Subversion CentOS7中怎么安裝Subversion版本控制系統

有部分有所修改

1)創建運行SVN服務器所需的用戶svn

groupadd svn
useradd -g svn svn

這里之所以要創建svn用戶啟動SVN服務器,而不使用root用戶啟動SVN服務器,是因為如果使用root用戶啟動SVN服務器,通過SVN客戶端使用非root賬戶訪問SVN服務器時,會出現

“xxxxxxxx db/txn-current-lock:permission denied”錯誤。

將svn用戶加入sudoers用戶中 CentOS7中怎么安裝Subversion版本控制系統

2)執行rpm -ql subversion命令了解SVN安裝的位置

CentOS7中怎么安裝Subversion版本控制系統

3)創建SVN版本庫文件夾

mkdir -p /opt/svnRepos

切換到svn用戶,為svn用戶添加這個文件夾的訪問權限

sudo chmod -R o+rw /opt/svnRepos
CentOS7中怎么安裝Subversion版本控制系統

4)創建SVN版本庫

svnadmin create /opt/svnRepos

執行命令后/opt/svnRepos文件夾下新增了一些文件夾 CentOS7中怎么安裝Subversion版本控制系統

5)添加用戶密碼和訪問權限

進入conf目錄,可以看到以下文件 CentOS7中怎么安裝Subversion版本控制系統

authz文件是權限控制文件

passwd是帳號密碼文件

svnserve.conf是SVN服務配置文件

修改passwd文件,在[users]段添加用戶svnuser1和訪問密碼 CentOS7中怎么安裝Subversion版本控制系統

修改authz文件,在文件最后為svnuser1用戶添加svn根目錄訪問權限 CentOS7中怎么安裝Subversion版本控制系統

這里[/]表示是svn根目錄,svnuser1=rw說明svnuser1用戶對根目錄有讀寫權限。如果要限制某些用戶對某些文件夾的

讀寫權限, 這里的[/]可以改為具體的文件夾目錄,再添加具體的用戶權限,這里不再贅述。

6) 修改svn配置文件

修改svnserve.conf文件

打開以下幾項的注釋(圖中以白色字體標注) CentOS7中怎么安裝Subversion版本控制系統

anon-access = read #匿名用戶可讀

auth-access = write #授權用戶可寫

password-db = passwd #使用哪個文件作為賬號文件

authz-db = authz #使用哪個文件作為權限文件

realm = /opt/svnRepos # 認證空間名,版本庫所在目錄

7)啟動SVN服務器

執行以下命令

svnserve -d -r /opt/svnRepos --config-file=/opt/svnRepos/conf/svnserve.conf

這條指令的參數-d表示以守護進程形式運行Svn服務器,-r表示Svn服務器的根目錄,后接SVN的根目錄。

–config-file是Svn服務器啟動所引用的配置文件,后接配置文件路徑。

svnserve指令的更多參數可以參考此文

https://linux.die.net/man/8/svnserve

啟動后可以查看到svnserve進程已經啟動 CentOS7中怎么安裝Subversion版本控制系統

8)在防火墻上開放SVN服務器端口

SVN服務器默認端口是3690,如果要修改默認端口,可以在運行svnserve命令時添加–listen-port參數,后接需要指定的端口號。

執行以下命令在CentOS7系統防火墻上開放SVN服務器端口

firewall-cmd --permanent --add-port=3690/tcp

systemctl restart firewalld.service

在客戶端安裝Tortoise SVN 1.9.7,安裝完成后新建一個文件夾,在文件夾中右擊,在彈出右鍵菜單中選擇[Repo-brower]菜單,在彈出的地址對話框中輸入SVN://IP(我們這里是SVN://192.168.56.102),再在驗證對話框中輸入用戶名rick和密碼,即可以訪問SVN根目錄,我們使用svnuser1用戶登錄SVN,如下圖所示 CentOS7中怎么安裝Subversion版本控制系統

我們使用svnuser1用戶在根目錄下新建trunk,tags和branches三個文件夾 CentOS7中怎么安裝Subversion版本控制系統

9)將SVN服務器設置為開機啟動服務

網上有相關文件通過修改/etc/rc.local文件設置SVN服務器開機啟動,這種做法在CentOS 7環境下已經過時,我們使用CentOS 7正常添加服務的方式。

我們切換到/usr/lib/systemd/system目錄下,創建名為svnserver.service的文件,添加以下內容

[Unit]
Description=SVN Server service  
After=network.target

[Service]
Type=forking
ExecStart= /usr/bin/svnserve -d -r /opt/svnRepos --config-file=/opt/svnRepos/conf/svnserve.conf
ExecStop=  /home/svn/stopSVN.sh
User=svn
Restart=on-abort

[Install]
WantedBy=multi-user.target

這里啟動SVN服務器直接使用命令,我試過寫一個.sh文件替換,但啟動后出現code=exited,status=203/EXEC錯誤,改用現在這種形式。

stopSVN.sh是用于關閉SVN服務的腳本文件,內容如下:

#!/bin/sh#查找是否有svnserve對應的進程,有的話關閉進程ps -ef|grep svnserve |grep -v grepif [ $? -ne 0 ]then  echo "the svn server does not start"else  killall -9 sh svnservefi#####

保存svnserver.service文件后,執行以下命令

systemctl daemon-reload
systemctl enable svnserver.service
systemctl start svnserver.service

如果shell窗口沒有出現錯誤信息,表示啟動已成功,我們可以執行以下命令檢查啟動狀態

systemctl status svnserver.service
CentOS7中怎么安裝Subversion版本控制系統

運行以下命令停止服務

systemctl stop svnserver.service

我們這時再運行systemctl stop svnserver.service,可以看到服務已經被停掉

至此SVN服務器在Linux服務器安裝成功,再次啟動CentOS系統后SVN服務器會開機啟動。

補充一點,CentOS自帶的SELinux默認是Enforcing,處于打開狀態,對于自啟動的SVN服務,會導致客戶端訪問SVN服務器時出現Permisson Denied的錯誤,我們需要手動關閉它,修改/etc/selinux/config文件

# This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:#     enforcing - SELinux security policy is enforced.#     permissive - SELinux prints warnings instead of enforcing.#     disabled - No SELinux policy is loaded.SELINUX=disabled# SELINUXTYPE= can take one of three two values:#     targeted - Targeted processes are protected,#     minimum - Modification of targeted policy. Only selected processes are protected.#     mls - Multi Level Security protection.SELINUXTYPE=targeted

把SELINUX從enforcing改為disabled,重啟系統,SVN服務自啟動后,從客戶端訪問不再出現Permssion Denied錯誤。

以上就是關于“CentOS7中怎么安裝Subversion版本控制系統”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

达州市| 邹平县| 临安市| 康定县| 调兵山市| 铅山县| 宜城市| 遂溪县| 巴青县| 长寿区| 永春县| 哈尔滨市| 察隅县| 宜章县| 西乌珠穆沁旗| 滦南县| 萨嘎县| 葫芦岛市| 车致| 鲜城| 临沧市| 定西市| 明水县| 紫金县| 德安县| 海口市| 陵川县| 将乐县| 罗江县| 五莲县| 南丹县| 金寨县| 新泰市| 西华县| 西乌珠穆沁旗| 镇江市| 察雅县| 西平县| 海淀区| 枣强县| 岳阳市|