阿里雲服務器搭建SVN

簡單步驟介紹linux

1:安裝svnweb

apt-get install subversionshell

 

2. 開啓svn服務器apache

svnserve -d服務器

檢查是否開啓:ps aux | grep svnserveeclipse

若出現以下內容:svn

wkr 6537 0.0 0.0 13784 956 ? Ss 16:18 0:00 svnserve -d
wkr 7593 0.0 0.0 5784 864 pts/0 S+ 21:57 0:00 grep –color=auto svnservepost

表示服務已開啓。(注意:必定要有第1行,只有第2行說明服務未啓動)測試

中止svn服務:  killall svnserveui

 

3. 創建倉庫

svnadmin create /home/svnrepos
理論上,倉庫能夠創建在任何目錄中。

注意:重啓svnserve  執行 svnserve -d  -r /home

這樣在eclipse客戶端把工程導入svn的時候 url須要填寫

svn://ip/svnrepos/project_name 

若是啓動的時候帶以下參數:svnserve -d  -r  /home/svnrepos

客戶端:svn://ip/project_name  這樣子會報錯。驗證失敗

4. 修改配置文件

編輯 svnserve.conf

vi /home/svnrepos/conf/svnserve.conf

 把anon-access = read 改成 none,auth_access = write 

 password-db = passwd  authz-db = authz 的註釋去掉,還有[general]的註釋也要去掉(這個默認沒有註釋)。
注:當你去掉註釋的時候,不要簡單的把前面的#去掉,要把前面的空格一塊去掉,否則在Eclipse中使用的時候會出現配置文件格式錯誤的問題。

注意:若是authz-db = authz 這個註釋掉了,則不須要配置/home/svnrepos/conf/authz

 

5. 修改賬戶文件

vi  /home/svnrepos/conf/passwd

### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.

[users]
# harry = harryssecret
# sally = sallyssecret
user1 = pass1  # 輸入你定義的用戶名和密碼,密碼顯然沒有加密

6. 修改受權文件

gedit /home/svnrepos/conf/authz

修改或者輸入下面2行:

[svnrepos:/]      ##格式爲    版本庫名稱  + :/
user1 = rw

其中,repos1是倉庫名稱,user1是用戶名,rw表明讀寫。

 7.客戶端鏈接
svn co svn://ip/oplinux
用戶名密碼:rsync

8.實現SVN與WEB同步,能夠CO一個出來,也能夠直接配在倉庫中

 
1)設置WEB 服務器根目錄爲/alidata/www/webroot
 
2)checkout一份SVN
 
svn co svn://localhost/alidata/www/svndata/myproject /alidata/www/webroot
修改權限爲WEB用戶
 
chown -R www:www /alidata/www/webroot/myproject
3)創建同步腳本
 
cd /alidata/www/svndata/oplinux/hooks/
cp post-commit.tmpl post-commit
編輯post-commit,在文件最後添加如下內容
 
export LANG=en_US.UTF-8
SVN=/usr/bin/svn
WEB=/alidata/www/webroot/
$SVN update $WEB –username myname –password myname
chown -R www:www $WEB
增長腳本執行權限
 
chmod +x post-commit
這樣,咱們上傳svn後,生產站點就能立馬顯示出來了,自動化程度高了不少。
 
 

 

 

 

若是上面過於簡單請看更詳細的流程介紹

         下面就簡單介紹如何基於阿里雲服務器搭建SVN服務器。

 

        第一步,購買阿里雲服務器

                       (1)登陸 http://www.aliyun.com,用手機號註冊一個帳戶(之後重裝系統、或着管理阿里服務器,都得用它)。

                        (2)購買服務器,建議你先購買1個月的使用期先試試,感受哈。

       

                       例如,我購買的配置是512M內存,20G系統盤+20G數據盤,2M的公網帶寬。

                       備註:阿里雲還贈送了1個獨立的「公網IP」地址。

   第二步,安裝操做系統

           說實話,這一步真夠省事的。呵呵。 選擇好合適的操做系統,而後你就衝杯咖啡耐心等個10多分鐘,你的服務器操做系統就安裝好了。

           

         阿里雲支持的操做系統基本涵蓋了「主流」的系統。

 

      第三步,遠程操做服務器

          在這裏我選擇了Xshell這個軟件,固然你能夠選用阿里雲推動的Putty

          (1)配置好SSH

(2)鏈接上服務器

(3)先修改默認的登陸密碼

       sudo passwd root

      由於初始化的密碼,實在是很差記憶

(4)修改默認主機名,否則每次登陸都會看到一串名稱

      vi /etc/hostname

(5)掛接數據盤(若是購買了數據盤)

         詳細的使用說明見:http://help.aliyun.com/origin?spm=0.0.0.30.ODRhOq&helpId=271 (Linux 系統掛載數據盤)

        備註:

            將數據盤的分區掛接到 /home/data 目錄下,方便從此的管理

           echo '/dev/xvdb1 /home/data ext3 defaults 0 0' >> /etc/fstab

 

(6)    重啓服務器

   

第四步、安裝apache 和svn 軟件

        (1)安裝apche 軟件

            sudo apt-get install apache2

       耐心等2,3分鐘,不愧是阿里雲服務器,速度超快

   在安裝完畢後,會有一個錯誤的警告。須要處理。

  vi /etc/apache2/httpd.conf

  在裏面增長一行

 ServerName 127.0.0.1:80

   而後再sudo /etc/init.d/apache2 restart  重啓apache 測試看看

打開IE,輸入虛擬服務器的地址便可。

 

   (2)安裝SVN

           sudo apt-get install subversion

          sudo apt-get install libapache2-svn

          2分鐘後便可安裝完畢。

     (3)配置版本庫

            版本庫配置實例見:http://blog.csdn.net/ex_net/article/details/7409439

           

         配置完畢後,重啓apache會出現警告,這主要是因爲apache沒有啓用svn的驗證模塊

      須要在apache的配置文件中加上

       vi /etc/apache2/mods-enabled/dav.load

       LoadModule authz_svn_module /usr/lib/apache2/modules/mod_authz_svn.so

     再重啓apache試試

    至此,配置成功!

 

 

若是你看到上圖,則說明你成功了。

 

         第五步、多版本庫配置提示

     (1)修改 vi /etc/apache2/httpd.conf

               例如:

             

[plain]  view plain  copy
 
  1. <span style="font-size:14px;"><Location /yjb>  
  2. DAV svn  
  3. SVNParentPath /home/data/yjb  
  4. AuthType Basic  
  5. AuthName "yjb subversion repository"  
  6. AuthUserFile /home/data/yjb/passwd  
  7. AuthzSVNAccessFile /home/data/yjb/auth  
  8. Require valid-user  
  9. </Location>  
  10.    
  11.   
  12. <Location /svn>  
  13. DAV svn  
  14. SVNParentPath /home/data/svn  
  15. AuthType Basic     
  16. AuthName "zjb subversion repository"  
  17. AuthUserFile /home/data/svn/passwd   
  18. AuthzSVNAccessFile /home/data/svn/auth  
  19. Require valid-user  
  20. </Location>  
  21. </span>  


      

     (2)而且在相應的目錄下添加密碼、用戶信息便可

相關文章
相關標籤/搜索