close
[SVN簡述]

Subversion 是一個用以分享資訊的中央系統,以檔案庫 (repository)作為儲存資料的核心。

檔案庫儲存資料的形式是檔案系統樹 (filesystem tree) ,也就是典型的目錄與檔案的架構。

用戶需先連上檔案庫然後對這些檔案作讀取或寫入的動作。

藉由共同資料庫觀念將資訊與他人共用。此節將說明目錄的結構。

在專案的根目錄下建立的 trunk、branches、和 tags 這三個目錄是有特別意義的,

它們的作用分別是: 


 trunk 目錄用來存放目前專案正在進行開發的程式檔案和文件(又稱為主幹,即 mainline)。


 branches 用來存放主線的各個仍在發展中的分支。

 tags 則用來存放已經不再變動的分支,也就是其中的檔案不會再修改了。

以上SVN簡述節錄自:

http://www.nidify.com/index.php?option=com_content&view=article&id=95&Itemid=96

[實驗目標/原由]

有鑑於大部份"軟體專案"開發產業,SVN版本控管架構已是不可或缺依賴工具,KEYNES過去工作

環境極單純,並無使用SVN工具需求==|||,但仍將SVN佈署整理備忘,以應變日後參考不時之需

SVN Server : VisualSVN 2.1.7

http://www.visualsvn.com/server/download/
                      
SVNClient:  TortoiseSVN 1.6.14
http://tortoisesvn.net/downloads.html

LAB實驗開始
(A) VisualSVN Server 佈署 :  

      安裝VisualSVN 軟體後,請開啟VisualSVN 控制界面

      建立新的Repostiories(儲存庫),供軟體專案開發人員存取SVN 區域

      Repositories(右鍵-> Create New Repositories)  #我們建立名為"project"的Repo
 

   
     
繼建立好Repo後,我們接下來建立授權使用者(權限)與群組(權限)配置

     點選  Users 容器 (右鍵->Create New User)  #建立ray使用者帳號與密碼

    
      點選  Groups 容器 (右鍵->Create New User)  #建立群組(project),並將ray加入該群組

    
  
     繼上述已經將project群組建立OK後,接者我們開始配置 使用者存取Repo使用權

     點選 
Repositories/project(右鍵-Properties) 之 Security(Add)

     請參考下圖  將"project" 群組加入,可授與'No Access' ,"ReadOnly","Read/Write" 三種權限

     設定OK請點選"套用"即可  
#VisualSVN另支援AD Domain Windows 驗證授權,本Lab
  
    僅使用SVN 帳號配置權限,有興趣的讀者可以抽空Try看看

    
      以上相關組態配置皆OK後,我們可以點開Broswer檢視目前SVN 初始化成果(確定Apache啟動)

      https://localhost/svn/project    

       #由於預設使用port為443,可另更改Port:8443

        登入svn 頁面時要求帳號/密碼驗證: 我們於此輸入ray與password 即可順利登入

        由於我們前幾步建立Repo(project) ,一併勾選建立 branches , tags,trunks 目錄

        SVN 版本由 "0" 開始, 因建立新Dir,故目前最新版本為"1"


     


(B)  TortoiseSVN Client 怖署

      
完成前面(A)部分,順利將SVN Server 架設起來後,接著我們將介紹用戶端如何使用SVN操作

       #請預先完成TortoiseSvn軟體安裝,並先建立好本機"開發軟用專案資料夾"
 
        本例設定為 E:/prokectA 

        Then 首先,我們對此資料夾(右鍵->SVN 取出)

        檔案庫 URL : 請填入

         https://localhost:8443/svn/project     
#由於本人先前已將443 更改為8443,故以此設定

         我們從Svn Server 目前新版本1 取回Local端E:\ProjectA\project, 預備編輯
      
          下一步將要求SVN Client 填入授權使用者帳號與密碼做驗證登入
           
          順利取得版本1物件成功訊息     
      
         [專案開發測試] : 參考下圖
 
       
  下圖中有三個目錄 branches , tags, trunk 有打勾  #表示目前此三個資料夾資料已與

         SVN Server 完成同步更新狀態, 然而我們於此另外新加入一個名為'log_rotate' 文字檔

          可看到下圖出現"?"號, 接者我們於空白處點選
右鍵->加入 意味,我們預計將修改成果加入

          下個版本 2 (完成後將發現"?"轉變為 "+"號)
      
         勾選"加入"檔案
    

        接者我們於該檔案空白處點選  右鍵->SVN 送交 

        下圖中我們可增添,檔案修改註解,並把需要同步至Svn Server 檔案進行勾選.勾選完點選

         [確定]

      
        然後,下方列出順利送交成功訊息,並將最新版本增至"2"
      
        [變更修改檔案]  

        當SVN Client 編修現有檔案時,該物件將出現"!" 號,此時我們亦如上執行'SVN 送交'動作
 
        將
修改結果同步至SVN Server 上即可
      
 
    [SVN UPDATE]

      確認目前版本更新態,掌握版本更新
        
      
        [將目前本機端專案回朔至特定(較舊)版本] 

        於空白處點選 右鍵 -> TortoiseSVN ->更新至版本

        眼尖讀者可以看見KEYNES於下圖偷新增檔案(ADPREP.txt) 為版本"4" 

        此舉是為了下一步將回朔並驗證至3 版(未新增ADPREP.txt 這個檔案時狀態而做測試)

     
       接者我們先點選'顯示紀錄' 查看我們需要回復哪個版本紀錄

       我們可以看見下圖所示, 版本4 確定新增 ADPREP.txt
     
          接著我們於"版本"  填入 "3"   #回朔至版本3
      
         下圖所示已成功完成版本3回朔,SVN 設計還挺方便(針對軟體專案開發人員)
     


(C) VisualSVN Server 補充說明 :

       Svn Clinet 尚還有幾個不錯功能尚未介紹 Merge/Branch/Tag..相信專案開發人員十分上手
 
       然後KEYNES工作本身不含維護SVN 這塊(並非軟體專業開發人員),接觸機率微乎其微

      在此補充幾個VisualSVN Server 組態未提到設定

      我們點選 VisualSVN Server (Local) 右鍵->內容

      General Tab : 我們可以變更Repo 實際路徑

    
  
      Network Tab: 我們可更改Server Name 與 SVN Server 使用 Port號
                               
                               已可限制連入SVN 使用網段Or IP Address

    
      
Authectiaction Tab :  除了SVN 本身帳號設置外,我們亦可變更為AD Domain 帳號整合驗證
     
       TortoiseSVN:  檔案庫瀏覽器  右鍵 ->檔案庫瀏覽器

       方便使用者增減檔案物件(可選取特定版本瀏覽/增減物件)
    

      PS_本人亦曾在LINUX 環境下成功架設SVN,有機會在Share日後文章
arrow
arrow
    全站熱搜

    終極.凱因斯 發表在 痞客邦 留言(0) 人氣()