1. 程式人生 > >linux6.8搭建SVN

linux6.8搭建SVN

阿里雲伺服器CentOS6.8搭建SVN伺服器

2017年07月21日 18:55:26  閱讀數:2178 標籤: svn伺服器centos 個人分類: 伺服器  

既然有了雲伺服器,那麼在寫程式碼的時候肯定工作的電腦要寫,回家了家裡的電腦也要寫,要想程式碼同步必定要一個版本控制工具,所以就在伺服器上搭建一個SVN伺服器

1、安裝SVN

yum -y install subversion
  • 1

這裡寫圖片描述 
出現Complete表明安裝成功

2、建立SVN倉庫目錄

mkdir -p /data/svn/repositories/eaglesvn
  • 1

3、建立SVN版本庫

svnadmin create /data/svn/repositories/eaglesvn/
  • 1

建立好會生成以下檔案 
這裡寫圖片描述

4、進入conf目錄

[[email protected] eaglesvn]# cd conf/ [[email protected] conf]# ll total 12 -rw-r--r-- 1 root root 1080 Jul 21 18:24 authz //許可權控制檔案 -rw-r--r-- 1 root root 309 Jul 21 18:24 passwd //賬號密碼檔案 -rw-r--r-- 1 root root 2279 Jul 21 18:24 svnserve.conf //SVN服務配置檔案
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

建立使用者(修改passwd檔案):

vim /data/svn/repositories/eaglesvn/conf/passwd
//在裡面增加使用者,格式為:使用者名稱 = 密碼
  • 1
  • 2

這裡寫圖片描述

設定許可權

vim /data/svn/repositories/eaglesvn/conf/authz
//在裡面增加許可權   格式為:使用者名稱 = rw (r:表示讀,w:表示寫),如
[eaglesvn:/]
zhangyh = rw
//eaglesvn為開始建立的版本庫
  • 1
  • 2
  • 3
  • 4
  • 5

這裡寫圖片描述

修改svnserve.conf檔案:

vim /data/svn/repositories/eaglesvn/conf/svnserve.conf
//放出一下注釋程式碼
anon-access = read //匿名使用者可讀 auth-access = write //授權使用者可寫 password-db = passwd //使用哪個檔案作為賬號檔案 authz-db = authz //使用哪個檔案作為許可權檔案 realm = /data/svn/repositories //認證空間名,版本庫所在目錄
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

這裡寫圖片描述

注意:以上所有修改檔案的操作,在每行的開頭和結尾都不能留空格,不然會報錯

5、啟動SVN

svnserve -d -r /data/svn/repositories/      //啟動svn,注意目錄,不包括eaglesvn ps aux | grep svnserve //檢視啟動情況
  • 1
  • 2

這裡寫圖片描述

如果有需要,在防火牆開放3690埠或者關閉防火牆

vim /etc/sysconfig/iptables
//在裡面增加以下程式碼
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT

6、測試SVN是否啟動 
svn訪問路徑:svn://伺服器ip/eaglesvn

svn co svn://112.74.58.005/eaglesvn
  • 1

這裡寫圖片描述

同時可以使用Eclipse連線SVN 
這裡寫圖片描述

Next,然後輸入使用者名稱密碼就OK了

到此,CentOS下的SVN伺服器就搭建成功了。

阿里雲伺服器環境(PHP+Nginx+MySQL)

【原因1】svnserve.conf 沒寫好,當然你先備份一份先:

cp svnserve.conf svnserve.conf.bak

開啟此檔案

vi svnserve.conf 

清空裡面的所有程式碼,複製黏貼以下程式碼:

[general]
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz

注:每行程式碼前面一定不要有空格,每行全部頂置。

【原因2】TortoiseSVN 快取問題

右鍵點選本地副本,TortoiseSVN -> Settings -> Saved Data,點選個個“Clear”按鈕,把本地快取都清除了,點選“確定”,再重新 “checkout”。

【原因3】防火牆 3690 埠沒有對外開放,因此我們要修改配置檔案:

vi /etc/sysconfig/iptables

在中間的位置複製如下程式碼(如果有就跳過):

-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT

重啟一下防火牆

service iptables restart