兩種方法實現(xiàn)SVN搭建測試服務(wù)器
本節(jié)和大家學(xué)習(xí)一下如何利用SVN搭建測試服務(wù)器,常用的有兩種方法,這里就向大家簡單介紹一下,歡迎大家能和我一起學(xué)習(xí)SVN搭建測試服務(wù)器的方法。
在正規(guī)的團隊開發(fā)流程中,測試服務(wù)器測試是必不可少的一個環(huán)節(jié),如何簡單快捷的部署測試服務(wù)器將是本文的重點。本文的實際環(huán)境是CentOS+PHP+MySQL+SVN,將通過兩種不同的途徑來實現(xiàn)部署測試服務(wù)器的最終目的。我們來看一下SVN搭建測試服務(wù)器的***種方法。
***種,post-commit
post-commit本身是SVN系列鉤子中的一個,是為了更方便對SVN使用中的常見操作進(jìn)行處理,建立測試服務(wù)器的步驟如下
在hooks目錄,創(chuàng)建post-commit文件,并將其內(nèi)容定義為類似如下
#!/bin/sh
exportLANG=en_US.UTF-8
svncheckout--usernamekimi--passwordpasswordsvn://10.0.0.8/projects//wwwroot/projects.ismole.net
chownwww:www/wwwroot/projects.ismole.net-Rf
說明:
1.#!/bin/sh說明是執(zhí)行shell命令
2.exportLANG=en_US.UTF-8是為了解決svnpostcommit中文亂碼,設(shè)置本地化編碼。不過SVN默認(rèn)是UTF-8編碼。如果字符集符合并且不設(shè)置將會出現(xiàn)錯誤,而執(zhí)行不成功,錯誤標(biāo)識為svn:Can’tconvertstringfromnativeencodingto‘UTF-8′
3.svncheckout–usernamekimi–passwordpasswordsvn://10.0.0.8/projects//wwwroot/projects.ismole.net執(zhí)行SVN檢出操作
4.chownwww:www/wwwroot/projects.ismole.net-Rf更改文件夾屬主為適合WebServer的。
里面原有的代碼全部注釋掉.這里可以執(zhí)行shell命令,每次commit完成后都會調(diào)用此文件。我們來看一下SVN搭建測試服務(wù)器的第二種方法介紹。
第二種,PHP檢出SVN
<?php
header("Cache-Control:no-cache,must-revalidate");
$handle=popen('svncheckout--usernamekimi--passwordpasswordsvn://10.0.0.8/projects//wwwroot/projects.ismole.net','r');
$read=stream_get_contents($handle);
echo"<pre>";
printf($read);
echo"</pre>"
pclose($handle);
?>
其實這種方式只是利用PHP來執(zhí)行l(wèi)inux命令,不過多描述。參考《PHP監(jiān)控linux服務(wù)器負(fù)載》:http://www.ccvita.com/390.html
綜合以上兩種方式,其目的都是通過將SVN檢出,并放置在相應(yīng)的web目錄下來實現(xiàn)的。這兩種相互比較而言,post-commit更為簡單快捷,無需更多的操作,但是對權(quán)限控制力度很小,只要有SVN的提交權(quán)限就有部署測試服務(wù)器的權(quán)限;PHP方式相比麻煩一些,但是對用戶權(quán)限的控制可以專門定制相應(yīng)的程序來實現(xiàn),幾乎可以實現(xiàn)任何角色對權(quán)限的控制。
在實際的使用過程中,我們目前對應(yīng)用的APP調(diào)試以及合作性質(zhì)的研發(fā)采用***種方式;如果對SVN需要比較多權(quán)限控制的話,推薦采用第二種,可以囊括測試,部署,上線等各個環(huán)節(jié)。在和新浪的一個合作中,采用這種異地開發(fā)方式。本節(jié)關(guān)于SVN搭建測試服務(wù)器的內(nèi)容講解完畢,請關(guān)注本節(jié)其他相關(guān)報道。
【編輯推薦】
- 七步輕松實現(xiàn)搭建SVN服務(wù)端
- 深入剖析opensuse10.3上如何搭建SVN服務(wù)器
- 學(xué)習(xí)指導(dǎo) 如何搭建SVN服務(wù)器
- 專家在線指導(dǎo)如何搭建SVN服務(wù)
- 常用SVN目錄結(jié)構(gòu)使用的兩大方法詳解