<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JAVA—咖啡館

    ——歡迎訪問rogerfan的博客,常來《JAVA——咖啡館》坐坐,喝杯濃香的咖啡,彼此探討一下JAVA技術,交流工作經驗,分享JAVA帶來的快樂!本網站部分轉載文章,如果有版權問題請與我聯系。

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks

    準備工作

      首先先下載Windows版本的SVN服務器(各位都會使用搜索引擎所以就不提供下載地址了),這里我以svn-win32-1.4.3的ZIP解壓縮版為例,將其解壓縮到目標目錄,例如我是解壓到D盤下的Subversion目錄,把D:\Subversion\bin加到系統環境變量,如果你的解壓位置與我不同,那么請按照你的實際路徑設置環境變量。

    第一步:創建SVN數據庫

      打開Windows命令提示符,執行命令svnadmin create F:\SVN,svnadmin create是創建SVN數據庫的命令,F:\SVN是你的SVN數據庫位置,這里我只是舉個例子,你可以自己決定SVN數據庫位置,執行完以上命令后就會在F盤下多出一個SVN目錄,里面有若干目錄和文件,conf目錄是用來存放權限配置的,后面會詳細說明,dav目錄用來提供給apache和mod_dav_svn存儲內部數據,db目錄是所有版本控制的數據文件,hooks目錄用來放置hook腳本文件,locks目錄存放Subversion文件庫鎖定數據,用來追蹤存取文件庫的客戶端,format是一個文本文件,里面只放了一個整數,表示當前文件庫配置的版本號,還有個readme.txt不用說也知道是干什么的了。

    第二步:啟動SVN服務器

      繼續在Windows命令提示符里執行命令svnserve -d -r F:\SVN,參數-d是將SVN服務做為后臺服務,參數-r是指定SVN服務的根目錄位置,F:\SVN自然就是SVN根目錄了,到這里為止SVN服務器就已經啟動了,可以用SVN客戶端測試一下。

    第三步:將SVN服務注冊為系統服務

      你可能會問這樣豈不是每次啟動SVN服務器都要輸入一次命令?怎樣才能讓SVN服務器在開機的時候自動啟動呢?答案就是將SVN服務注冊到Windows系統服務,在Windows命令提示符里執行命令
    sc create SVN binpath= "\"d:\subversion\bin\svnserve.exe\" --service -r F:\SVN" displayname= "SVN Service" depend= Tcpip start= auto,這個命令是不是有點長?其實很容易理解,sc是Windows自帶的系統服務注冊工具,微軟支持中心提供了詳細的說明,這里我就不再復述了,參數binpath= "\"d:\subversion\bin\svnserve.exe\" --service -r F:\SVN"和我們前面手動啟動SVN服務器的命令很像吧?只是把-d改成了--service,這不難理解,因為現在是服務嘛。好了,現在已經大功告成了,重起一下試試吧。
    PS:如果想從系統服務里刪除剛才注冊的SVN服務可以使用sc delete SVN命令。

    第四步:設置權限

      各位都是做IT的,為研發中的項目設置合理的權限有多重要就不需要我說了,就拿開發游戲來說吧,程序部門需要有源代碼目錄的所有權限以及美術資源目錄和策劃案目錄的獲取權限,美術部門需要有美術資源目錄的所有權限以及策劃案目錄的獲取權限,而策劃部門則需要有策劃案目錄的所有權限及美術資源目錄的獲取權限。接下去就來看看SVN是如何設置權限的,還記得第一步創建SVN數據庫時提到的conf目錄吧,conf目錄里有3個文件,這3個都是文本文件,用計事本打開它們就行了,我們先看svnserve.conf文件,anon-access項指定了未經驗證的用戶所具有的操作權限,它有3個有效值,分別是read,write,none,read為讀權限,write為寫權限,none為沒有任何權限,password-db項用來指定存放用戶名和密碼的文件,authz-db項用來指定存放用戶權限的文件,realm項用來指定驗證范圍,這項一般情況下用不到,以上4項默認都是被注釋掉的.#號為注釋符,要起用它們只需要把注釋符去掉即可。passwd文件是默認存放用戶名和密碼的文件,例如我設置一個Sol用戶,密碼為111111,只需在[users]下添加Sol=111111即可,authz文件是默認指定存放用戶權限的文件,[groups]代表分組,這里我們設置個developer組,將前面創建的Sol用戶分到developer組里,同樣只需在[groups]下寫上developer=Sol即可,[/]代表根目錄,如果我們要設置developer組有完全的訪問權限就在下面加上@developer=rw,前面加@符代表組,除此之外我們允許所有人都有讀取權限還要在下面加上*=r,SVN允許對每個目錄設置權限,設置方法和根目錄差不多,如果到這里你還不是很明白那么請看下面的例子。

    一個權限配置的例子

      我們以游戲項目開發為例,項目名就叫Project1吧,怎么創建SVN數據庫上面已經說過了,我們在SVN的根目錄下創建一個名為Project1的本地數據庫,先配置conf目錄下的svnserve.conf文件,我們不允許任何與研發無關的人員訪問此項目,因此我們禁止匿名訪問并為每個研發人員創建個人帳號,權限文件和帳戶信息文件用默認同目錄下的authz文件和passwd文件就行了。

    svnserve.conf文件配置如下:

    [general]
    anon-access = none
    password-db = passwd
    authz-db = authz

      接下去配置passwd文件,為每個研發人員設置個人帳戶,假設項目負責人是Sol,程序部門有Tom、Mark,美術部門有John、Alina、Candice、Ellen,策劃部門有Terry、Jane,這里我們為了方便將密碼全部設置為000000,現在是例子沒關系,實際應用的時候密碼就不能這么隨便設置了。

    passwd文件配置如下:

    [users]
    Sol = 000000
    Tom = 000000
    Mark = 000000
    John = 000000
    Alina = 000000
    Candice = 000000
    Ellen = 000000
    Terry = 000000
    Jane = 000000

      帳戶都創建好了,現在為他們分配不同的權限,先設置4個組.分別是manager 、developer、artist、designer,將Sol分配到manager組里,將Tom、Mark分配到developer組,將John、Alina、Candice、Ellen分配到artist組,將Terry、Jane分配到designer組,等會我們會在項目中創建designs、sources、resources、reports這4個目錄,然后在reports目錄里為每個人創建一個以自己帳戶命名的目錄用來放每個人的工作報告,manager組擁有所有目錄的讀寫權限,developer組擁有sources目錄的讀寫權限以及designs和resources目錄的讀取權限,artist組擁有resources目錄的讀寫權限以及designs目錄的讀取權限,designer組擁有designs目錄的讀寫權限以及resources目錄的讀取權限,每個帳戶都擁有reports目錄下以自己帳戶命名的目錄的讀寫權限,也就是說每個人的工作報告只有自己和項目負責人能看到。

    authz文件配置如下:

    [groups]
    manager = Sol
    developer = Tom,Mark
    artist = John,Alina,Candice,Ellen
    designer = Terry,Jane

    [Project1:/]
    @manager = rw
    * = r

    [Project1:/designs]
    @manager = rw
    @developer = r
    @artist = r
    @designer = rw
    * =  

    [Project1:/sources]
    @manager = rw
    @developer = rw
    * =

    [Project1:/resources]
    @manager = rw
    @developer = r
    @artist = rw
    @designer = r
    * =

    [Project1:/reports/Sol]
    Sol = rw
    * =

    [Project1:/reports/Tom]
    @manager = rw
    Tom = rw
    * =

    [Project1:/reports/Mark]
    @manager = rw
    Mark = rw
    * =

    [Project1:/reports/John]
    @manager = rw
    John = rw
    * =

    [Project1:/reports/Alina]
    @manager = rw
    Alina = rw
    * =

    [Project1:/reports/Candice]
    @manager = rw
    Candice = rw
    * =

    [Project1:/reports/Ellen]
    @manager = rw
    Ellen = rw
    * =

    [Project1:/reports/Terry]
    @manager = rw
    Terry = rw
    * =

    [Project1:/reports/Jane]
    @manager = rw
    Jane = rw
    * =

      目錄的權限都設置完了,但是目錄我們還沒有創建,現在只有項目負責人才有權限在項目根目錄下創建目錄,所以我們用Sol的帳戶來創建designs、reports、resources、sources這4個目錄,然后再到reports目錄里為每個人創建以各自帳戶命名的工作報告目錄,好了,到這里就全部搞定了,收工。

    posted on 2010-07-09 09:02 rogerfan 閱讀(659) 評論(0)  編輯  收藏 所屬分類: 【項目管理】【開源技術】
    主站蜘蛛池模板: 久久亚洲欧美国产精品| 国产又黄又爽又猛的免费视频播放| 精品国产免费观看| 十八禁在线观看视频播放免费| 亚洲色成人四虎在线观看| 香蕉蕉亚亚洲aav综合| 在线成人爽a毛片免费软件| 尤物视频在线免费观看| 亚洲中文字幕精品久久| 亚洲福利电影一区二区?| 亚洲精品无码久久久影院相关影片| a级午夜毛片免费一区二区| 亚洲aⅴ天堂av天堂无码麻豆| 亚洲区视频在线观看| 亚洲小视频在线观看| 成人免费看片又大又黄| 亚欧人成精品免费观看| 久久午夜夜伦鲁鲁片免费无码| 国产va免费精品| 一个人晚上在线观看的免费视频 | 亚洲VA成无码人在线观看天堂| 暖暖免费在线中文日本| 一边摸一边爽一边叫床免费视频| 亚洲人成色777777精品| youjizz亚洲| 又粗又硬免费毛片| 日韩一级在线播放免费观看| 4虎永免费最新永久免费地址| 免费无码一区二区三区| 久久午夜无码免费| 久9久9精品免费观看| 暖暖免费日本在线中文| 无码一区二区三区免费| 久久这里只精品99re免费| 久久国产精品免费视频| 久久久久国色av免费看| 最近中文字幕电影大全免费版 | 中国在线观看免费国语版| 午夜国产精品免费观看| 国拍在线精品视频免费观看| 国产免费AV片在线播放唯爱网|