個人TDD實踐---SVN架設篇

「個人TDD實踐」系列之SVN架設

 

寫在前面:html

  個人TDD實踐這幾篇文章主要是圍繞測試驅動開發所展開的,其中涵蓋了一小部分測試理論,更多的則是關注工具的使用及環境的搭建,作到簡單實踐先行,後理論專精的目的。服務器

 

 TDD實踐系列文章:分佈式

  1.TDD概念篇svn

  2.CI持續集成工具

  3.SVN架設篇單元測試

  4.UnitTest單元測試測試

 

  

  

  

 

1. 介紹:

  本文主要是介紹Source control system(源文件管理系統),這是CI的基礎,固然你也徹底能夠用它只作數據存儲,並行開發,源代碼控制等等,這裏就不詳細介紹了,網上有不少資料描述SVN以及源代碼管理,TFS也是一個不錯的選擇。ui

這裏我選擇了Subversion+TortoiseSVN的選擇,由於開源以及應用普遍,免費。spa

  一般所說的SVN實際上是分爲2個部分的:.net

    服務端Server:Subversion

    客戶端Client:TortoiseSVN (普遍引用,功能強大,操做簡單)

 

  a) 意義:

    i.              提供獲取歷史版本功能,恢復錯誤版本以前的狀態。或比較版本之間的不一樣。

   ii.              鎖定正在編輯的文件,訪問控制鎖定,防止提交衝突。(不一樣產品,實現功能略有不一樣。)

   iii.              良好的版本管理、版本分發。

   iv.              提供文檔,工具,測試,源代碼的一體化管理。

  b) 權衡

  

  說明:Centralized集中式管理 與 Distributed分佈式管理(要是開源的建議能夠分佈式管理,反之集中式管理)

     Transactional支持事務性與nontransaction不支持事務性(是否支持還原代碼版本,很重要。曾經的慘痛教訓告訴我,即便能回滾的狀況下已經很鬧心況且不能還原數據。) 

     File blocking文件鎖or non-file blocking非文件鎖定方式。(文件鎖定方式屬於樂觀鎖,即檢出時(checkout)有權限的人均可以獲取,可是提交時(checkin)會進行版本控制,簡而言之,若是你和某人同時改寫了同一個文件,通常狀況下誰先提交到服務器上,第二我的就沒法提交併報告文件衝突。)

 

2. 環境搭建

Server :Subversion

Subversion官網 (建議下載1.6.x)

Client:TortiseSVN

目前,官網只有1.8.x 64位版本,請找到適合您的客戶端。

本文中建議配合Subversion請使用TortoiseSVN-1.6.8.19260-win32-svn-1.6.11版本

 

步驟Steps:

  1. 點擊Subversion安裝包,並將程序安裝到「指定目錄」(默認是C盤下),默認安裝後重啓。
  2. 安裝完成,測試是否安裝成功。

打開CMD程序,輸入 svnserve --help。沒有提示錯誤就是安裝成功。

  3.SVN服務端配置:

    a) 在CMD中輸入:sc create SVNService binpath= "C:\Program Files\Subversion\bin\svnserve.exe --listen-port 3691 --service -r D:\SVN\Server\RepositoryRoot" displayname= "SVNService" start= auto depend= Tcpip

其中C:\Program Files\Subversion\bin\svnserve.exe是安裝程序的路徑;D:\SVN\Server\RepositoryRoot是目標路徑,在此以前要提早建立好該目錄下的RepositoryRoot文件夾。

囉嗦一句,win7下要管理員權限,沒有權限會返回「失敗5:拒絕訪問」。

也能夠用批處理的方式注入cmd命令。

                       

成功後會返回: CreatServer 成功。

    b) 啓動SVNService服務:(管理員權限)cmd 執行 net start SVNService (SVNService是上面定義的服務名稱)

    c) 使用SVN集成命令(或TSVN建立),cmd-> input:svnadmin create D:\SVN\Server\RepositoryRoot(此路徑必須是服務開啓的路徑)。而後你會在此目錄下看到生成了不少文件,具體不一一介紹了,在這個文件夾中建立tags,trunk,branches文件夾。

 

    d) 配置Svn服務端:

    在conf文件夾下,

    Svnserve文件修改以下:

    anon-access = none

    auth-access = write

    password-db = passwd

    realm = My First Repository

    passwd文件修改以下:

    [users]  

    qq=229063661

         至此,服務端配置基本完成,更多的設置文件中有說明,或者去訪問SVN中文站,這裏筆者要強調一下的是:SVN服務端和客戶端的版本要一致,否則可能會出現莫名其妙的錯誤。更有意思的是,您能夠不創建SVN服務端而直接聯接Git的開源程序,但目前只支持只讀。

  4.SVN客戶端配置:

    a) 安裝TortoiseSVN-1.6.8.19260-win32-svn-1.6.11.exe。基本都是默認設置,安裝完以後能夠更改語言。

    b) 完成本地磁盤和Svn服務端磁盤的映射。

                         i.  在本地文件夾下右鍵---checkout---按照圖片上的設置(注意我是本地因此用localhost,IP能夠跨機器訪問;我更改了端口3691,因此要顯示指明一下,要否則會出錯。),最後輸入passwd中的用戶名和密碼便可。(qq:229063661)

 

  至此,SVN客戶端也配置完畢了,SVN的使用方法這裏就不舉例了,網上資料很是豐富,並且你們也能夠查看T-SVN的操做手冊,或者訪問SVN中文站得到更多信息。

 

 

 

 

這裏羅列一下相關資源:

T-SVN手冊:http://www.subversion.org.cn/tsvndoc/

相關文章
相關標籤/搜索