centos7 搭建SVN伺服器

2021-07-10 10:14:35 字數 2825 閱讀 1518

1:經多次實踐,最終終於成功搭建,特此記下該過程

2:首先在伺服器安裝svn

yum install subversion -y

3:檢查是否安裝成功

svnserve –version

4:建立乙個版本庫

mkdir /opt/svn/repos (絕對路徑建立) 建立目錄

svnadmin create /opt/svn/repos 初始化版本,此時會生產很多配置檔案

五、配置svn內容

進入上面生成的資料夾conf下,進行配置, 有以下幾個檔案authz, passwd, svnserve.conf

其中authz 是許可權控制,可以設定哪些使用者可以訪問哪些目錄, passwd是設定使用者和密碼的, svnserve是設定svn相關的操作。

1. 設定passwd

這樣我們就建立了test使用者, 123密碼 。

2. 設定許可權authz

設定test使用者對所有的目錄有讀寫許可權,當然也可以限定。

3. 設定svnserve.conf

anon-access = none # 使非授權使用者無法訪問

auth-access = write # 使授權使用者有寫許可權

password-db = password

authz-db = authz # 訪問控制檔案

realm = /opt/svn/repos # 認證命名空間,subversion會在認證提示裡顯示,並且作為憑證快取的關鍵字。

採用預設配置. 以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.

4. 啟動svn

killall svnserve //先殺死所有的svn程序

svn: svnserve -d -r /opt/svn/repos

svn import /data/wwwroot/default/ file:///data/svn/repos -m 「ss」

六、設定防火牆允許訪問3690埠

vi /etc/sysconfig/iptables

-a input -m state –state new -m tcp -p tcp –dport 3690 -j accept

systemctl restart iptables.service

七、鏈結

使用svn客戶端工具,安裝tortoisesvn後,右擊d:\test目錄選擇checkout即可,測試環境下連線正常。、

在這裡說我的迷點

第一:svn的路徑url的構成也就是檢出的時候需要的路徑

首先是svn://host(ip)/

然後看這條命令 svn: svnserve -d -r /opt/svn/repos

如果這條命令你寫到了專案名稱也就是倉庫名稱 位址就是svn://host(ip)/

如果你是這樣寫 svn: svnserve -d -r /opt/svn/

那麼位址就是svn://host(ip)/repos

第二個多個版本庫的運用

你可以使用svnadmin 建立多個版本庫,為了好管理,你最好是都建立在同一目錄下面。因為啟動svn服務只能是乙個目錄而已。

建立好之後,你可以把配置檔案都移動到外層,然而你就可以配置好三個檔案,對應多個版本庫。

第三個svn的高階命令教程需要自己去研究了,本文指望能領進門而已。

3、## 配置專案倉庫的鉤子配置。 ##

可以把鉤子看成是web專案與svn專案倉庫之間的乙個關聯。通過向svn專案倉庫提交指令碼**,利用鉤子shell指令碼可以自動向web專案中將指令碼檔案更新過去。

進入svn專案倉庫鉤子所在目錄,shell命令:

cd /opt/svn/wwwroot/hooks/

然後執行如下複製命令:

cp post-commit.tmpl post-commit

然後編輯post-commitshell指令碼,shell命令如下:

vi post-commit

將裡面的所有**注釋掉,然後輸入如下**:

cd /data0/htdocs/wwwroot

/usr/bin/svn cleanup

/usr/bin/svn up /data0/htdocs/wwwroot/ –username 「wwwroot」 –password 「123456」

這個地方需要注意,我們先進入到wwwroot目錄下進行svn清理(cleanup),消除一些隱患。然後再執行將 svn wwwroot專案建立裡面的**同步更新到web專案目錄/data0/htdocs/wwwroot/中去。這裡的賬號wwwroot和密碼123456是我們建立svn wwwroot專案倉庫的時候指定的。

這個時候,我們去提交乙個檔案到svn,這時會發現在/data0/htdocs/wwwroot/目錄下同步更新過來了。

如果沒有反應,會有兩個地方可能出錯:

1)配置檔案與路徑寫得不對,可以直接通過手工方式去執行post-commit看看有沒有報錯。

2)許可權不對。即/data0/htdocs/wwwroot許可權是否足以滿足指令碼的讀寫。

Centos7搭建SVN伺服器

安裝 centos 我這裡使用的是centos7 下yum命令即可方便的完成安裝 sudo yum install subversion測試安裝是否成功 svnserve version 建立版本庫 建立svn資料目錄 subversion預設是把 var svn作為資料根目錄的,開機啟動預設也是從...

CentOS7搭建SVN伺服器

centos7搭建svn伺服器步驟如下 1 centos系統通過yum安裝subversion yum y install subversion 2 驗證svnserve是否安裝成功 svnserve version 3 修改svnserve資料源目錄為 opt svn 預設目錄 var run 可...

CentOS 7搭建SVN伺服器

安裝步驟如下 1 yum install subversion 2 檢視安裝版本svnserve version 3 建立svn版本庫目錄mkdir p var svn svnrepos 4 建立版本庫svnadmin create var svn svnrepos 執行了這個命令之後會在 var ...