LINUX環境下SVN安裝與配置(利用鈎子同步開發環境與測試環境)


安裝采用YUM一鍵安裝:

1.環境Centos 6.6

2.安裝svn
yum -y install subversion

3.配置

建立版本庫目錄
mkdir /www/svndata

svnserve -d -r /www/svndata

4.建立版本庫

創建一個新的Subversion項目
svnadmin create /www/svndata/project

5.版本庫配置

進入對應的版本庫如nilrxx,里面有一些自動給生成的文件。在conf目錄下就是我們需要配置的三個文件:authz  passwd  svnserve.conf

現只記錄我得成功配置如下:

  5.1:打開svnserve.conf,打開下面這條語句的注釋就行

      password-db = passwd

  5.2:打開passwd文件,加入一個用戶並制定密碼即可

      ruanwenwu = 123456

6.開啟svn服務

  6.1: svnserve -r -T -d /www/svndata

     解釋:后面跟着的時倉庫目錄,並不是項目目錄

  6.2:將這個命令加入到開機啟動:

     vi /etc/rc.local

    將6.1的命令加入到文件中即可

7.這時就可以將項目目錄import到我們的項目倉庫了

  7.1:進入我們的項目目錄比如:/home/wwwroot/www.doubilaile.com

     cd /home/wwwroot/www.doubilaile.com

  7.2: svn import ./ svn://192.168.1.233/project

     運行這條命令可能出現$svnEditor環境變量的問題,只需要運行這條命令就行了:export SVN_EDITOR=vim

    命令執行成功會彈出一個日志文件編寫輸入的情況,隨便寫兩句保存即可。到這里項目就被導了進來。

8.到這里就可以打開window的svn客戶端checkout項目了,路徑是svn://192.168.1.233/project

 如果碰到目標計算機積極拒絕的情況,請檢查LINUX是否開啟了防火牆,如果開啟了就關閉。

 查看防火牆狀態:sevice iptables status;

   關閉防火牆:service iptables stop;

 永久關閉: chkconfig iptables off;

我們經常需要提交代碼后同時在LINUX環境下進行測試。怎么辦呢?可以利用svn的hook來解決。

 

利用SVN的鈎子同步更新代碼的方法詳解

先普及一下小常識
SVN的鈎子,即hook(在每個版本庫下有hooks文件夾,里面有很多鈎子程序,我的目錄是/home/svn/fitness/hooks/)。在subversion執行一個操作時,就會相應的首先去調用相關的鈎子程序。
 
 
我們在開發時都會建立測試環境,不需要每個人都Update到本地再測試。
基於SVN的這種特性,要想實現一個同步的測試服務器,我們只需要在用戶執行完畢commit操作后,讓鈎子程序自動更新測試服務器的文件即可。
 
 
 
有了這樣的思路,我們就開始建立post-commit的鈎子吧
 
1、在網站的目錄下,使用checkout命令建立一個副本 #svn co SVN_URL /var/www/mySite/
  例如:svn co svn://192.168.1.233/project /var/www/www.doubilaile.com/
  這句話的意思其實就是將倉庫中得代碼checkout到/var/www/www.doubilaile.com/這個目錄下。
 
2、現在設置鈎子,復制倉庫project中的/hooks/post-commit.temp文件為post-commit,並修改文件的權限#chmod 755 post-commit
 
3、編輯post-commit,把以下代碼寫入

#!/bin/sh

export LANG=zh_CN.GBK

svn update --username ruanwenwu --password 207099 /home/www/www.doubilaile.com

 
第一條命令是window本地字符編碼,第二條是同步 
大功告成,可以使用了。關於這個post-commit文件,可以完全采用上面的語句,不用管默認的。親測可以通過。至此,一個完整的SVN同步,並在測試環境下同步的工作便完成了。 

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM