2007年9月17日星期一

Subversion與Trac合用時的檔案庫Layout考量

Subversion與Trac合用時的檔案庫Layout考量
  • ?
  • 專案管理工具
  • 平均分數:0 顆星 投票人數:0
    我要評分:


    一般Subversion檔案庫的Layout皆以下列兩種為主:
    1. 版本類型為主,再區分專案
      1. trunk
        1. Project1
        2. Project2
      2. branches
        1. Project1
        2. Project2
      3. tags
        1. Project1
        2. Project2
    2. 以專案為主,再區分版本類型
      1. Project1
        1. trunk
        2. branches
        3. tags
      2. Project2
        1. trunk
        2. branches
        3. tags
    一開始我們採用的是第一種,再依不同的檔案類型分成數個目錄,例如:
    1. trunk
      1. webPage
        1. Project1
        2. Project2
      2. javaSource
        1. Project1
        2. Project2
      3. document
        1. Project1
        2. Project2
    在此種佈局下,讓開發人員自行將專案各自取出到本地端即可,在檔案庫裡不需要建立太多的trunk/branches/tags目錄,這種方式運行許久一直都算順利,但直到Trac上線才發現目前的佈局對於在Trac裡的瀏覽造成狀況。

    Trac目前無法同時管理多個專案,我們必須為不同的專案建立不同的Trac系統,在此種狀態下面臨了下列問題:
    1. 使用者權限必須在每個Trac裡都設定一次,對管理人員而言頗為繁瑣
    2. 每個Trac只能指定一個Subversion的路徑,結果因為我們一個專案拆成webPage、javaSource、document等不同的路徑,造成Trac無法同時指定
    經過討論後,我們必須把佈局修改成下列的樣式,在最上層建立統合的project目錄,使每個專案的Trac能分別指定:
    1. project
      1. Project1
        1. webPage
          1. trunk
          2. branches
          3. tags
        2. javaSource
          1. trunk
          2. branches
          3. tags
        3. document
          1. trunk
          2. branches
          3. tags
      2. Project2
        1. webPage
          1. trunk
          2. branches
          3. tags
        2. javaSource
          1. trunk
          2. branches
          3. tags
        3. document
          1. trunk
          2. branches
          3. tags
    在Trac 裡指定的Subversion路徑是:/project/project1,當有權限人員瀏覽源碼時,就能觀看到某專案在Subversion裡的所有檔 案了。Trac的問題解決了,但在Subversion檔案庫裡的結構變得比以前複雜。似乎陷入了有一好沒兩好的窘境了。

    本文的引用網址  http://blog.xuite.net/emisjerry/tech/13082327/track
  • 回應
  • 2007-08-20 20:50:21 emisjerry
    To Jeffery,

    謝謝你的資訊,我會試看看的。
    2007-08-20 13:21:36 jeffery

    您 好!我經常看你的Blog, 今天看到你寫的這篇Trac的limit, 我建議你可以看一看Codebeamer, Codebeamer與Subversion有不錯的整合並且可以管理多個專案,每個專案擁有自己的SVN Repository,這樣可以有效解決權限管理的問題.

    Codebeamer也有內建Wiki (採用JSPWiki) 每個專案可以擁有自己的wiki space , 可以參考http://opensource.javaworld.com.tw

    没有评论: