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

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

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

    java思維

    正在學習中:(

    RedHat LinuxAS4 cvs 服務器搭建步驟

    根據網上各種文檔整理而成.=號兩邊要空格的問題折磨了我好久.

     

    1:安裝

    先檢查是否安裝CVS包

    #>rpm -qa|grep cvs

    沒有安裝的話,用下面2種方法安裝

    (1):在安裝linux的時候可以選擇安裝CVS包
    (2):另外下載CVS RPM包 自行安裝

    2:建立cvs用戶和組

    #> groupadd cvs
    #> useradd -g cvs -G cvs –d /cvsroot cvsroot
    #> passwd cvsroot

    更改目錄屬性
    chmod –R 770 /cvsroot

    3:建立CVS服務

    #more /etc/services | grep cvspserver

    看看是否有
    cvspserver 2401/tcp #CVS client/server operations
    cvspserver 2401/udp #CVS client/server operations

    如果沒有需要到/etc/service文件中增加

    建立#vi /etc/xinet.d/cvspserver 文件內容如下

    service cvspserver
    {
    disable = no
    flags = REUSE
    socket_type = stream
    wait = no
    user = root
    server = /usr/bin/cvs
    server_args = -f --allow-root=/cvsroot pserver
    }

    該文件有特別要注意的地方,所有=號兩邊都需要空一個空格,除了"root=/cvsroot" 所有要空格的地方,不要多加空格.否則會有CVS服務不能啟動的問題

    切換到cvsroot用戶

    #cvs -d /cvsroot init

    然后重新啟動xinetd服務或者重啟動機器

    #service xinetd restart

    然后用

    #netstat -l | grep cvspserver
    or
    #netstat -l | grep 2401

    看是否有下面tcp 0 0 *:cvspserver *:* LISTEN

    說明已經正常啟動,沒有的話請重新檢查配置過程是否有錯誤或者遺漏。最后還必須檢查防火墻的設置,把2401端口打開。

    4:用戶管理

    CVS默認使用系統用戶登錄,所有系統用戶都可以登陸,但是這樣對系統不安全,我們需要獨立的用戶管理.CVS用戶名和密碼保存在CVSROOT目錄下的passwd文件中.格式

    用戶名:密碼:系統用戶

    #htpasswd passwd username

    用來設置用戶密碼并保存到passwd文件中.

    然后需要關閉系統用戶登陸使用cvs的權限,CVSROOT目錄下的config文件,把#SystemAuth=no的#去掉就可以了.

    測試登陸

    #cvs -d “:pserver:username@127.0.0.1:/cvsroot” login

    ok

     

    5 :源代碼倉庫的備份和移動
    基本上,CVS的源代碼倉庫沒有什么特別之處,完全可以用文件備份的方式進行備份。需要注意的只是,應該確認備份的過程中沒有用戶提交修改,具體的做法可以是停止CVS服務器或者使用鎖等等。恢復時只需要把這些文件按原來的目錄結構存放好,因為CVS的每一個模塊都是單獨的一個目錄,與其他模塊和目錄沒有任何瓜葛,相當方便。甚至只需要在倉庫中刪除一個目錄或者文件,便可以刪除該模塊的一些內容,不過并不建議這么做,使用CVS的刪除功能將會有一個歷史記錄,而對倉庫的直接刪除不留任何痕跡,這對項目管理是不利的。移動倉庫與備份相似,只需要把該模塊的目錄移動到新的路徑,便可以使用了。
    如果不幸在備份之后有過一些修改并且執行了提交,當服務器出現問題需要恢復源代碼倉庫時,開發者提交新的修改就會出現版本不一致的錯誤。此時只需要把CVS相關的目錄和文件刪除,即可把新的修改提交。

    6.更進一步的管理
    CVSROOT目錄下還有很多其他功能,其中最重要的就是modules文件。這個文件定義了源代碼庫的模塊,下面是一個例子:

    代碼:
    Linux    Linux
    Kernel   Linux/kernel


    這個文件的內容按行排列,每一行定義一個模塊,首先是模塊名,然后是模塊路徑,這是相對于CVS根目錄的路徑。它定義了兩個模塊,第一個是Linux模塊,它位于Linux目錄中,第二個是Kernel模塊,這是Linux模塊的子模塊。
    modules文件并非必須的,它的作用相當于一個索引,部分CVS客戶端軟件通過它可以快速找到相應的模塊,比如WinCVS。

    7.協同開發的問題
    默認方式下,CVS允許多個用戶編輯同一個文件,這對一個協作良好的團隊來說不會有什么問題,因為多個開發者同時修改同一個文件的同一部分是不正常的,這在項目管理中就應該避免,出現這種情況說明項目組內部沒有統一意見。而多個開發者修改文件的不同部分,CVS可以很好的管理。
    如果覺得這種方式難以控制,CVS也提供了解決辦法,可以使用cvs admin -l進行鎖定,這樣一個開發者正在做修改時CVS就不會允許其他用戶checkout。這里順便說明一下文件格式的問題,對于文本格式,CVS可以進行歷史記錄比較、版本合并等工作,而二進制文件不支持這個操作,比如word文檔、圖片等就應該以二進制方式提交。對于二進制方式,由于無法進行合并,在無法保證只有一個用戶修改文件的情況下,建議使用加鎖方式進行修改。必須注意的是,修改完畢記得解鎖。
    從1.6版本開始,CVS引入了監視的概念,這個功能可以讓用戶隨時了解當前誰在修改文件,并且CVS可以自動發送郵件給每一個監視的用戶告知最新的更新。

    8.建立多個源代碼倉庫
    如果需要管理多個開發組,而這些開發組之間不能互相訪問,可以有2個辦法:
    a.共用一個端口,需要修改cvspserver文件,給server_args指定多個源代碼路徑,即多個—allow-root參數。由于xinetd的server_args長度有限制,可以在cvspserver文件中把服務器的設置重定向到另外一個文件,如:

    代碼:
    server = /home/cvsroot/cvs.run


    然后創建/home/cvsroot/cvs.run文件,該文件必須可執行,內容格式為:

    代碼:
    #!/bin/bash
    /usr/bin/cvs -f \
    --allow-root=/home/cvsroot/src1 \
    --allow-root=/home/cvsroot/src2 \
    pserver


    注意此時源代碼倉庫不再是/home/cvsroot,進行初始化的時候要分別對這兩個倉庫路徑進行初始化,而不再對/home/cvsroot路徑進行初始化。
    b.采用不同的端口提供服務
    重復第2步和第3步,為不同的源代碼倉庫創建不同服務名的啟動腳本,并為這些服務名指定不同的端口,初始化時也必須分別進行初始化。
     
     

     

     

    posted on 2008-05-25 02:04 john 閱讀(427) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲av无码偷拍在线观看| 亚洲国产成人无码AV在线| www在线观看播放免费视频日本| 午夜一区二区免费视频| 亚洲av永久中文无码精品综合| 四虎成人免费影院网址| 亚洲精品无AMM毛片| 四虎影视在线永久免费观看| 美女羞羞视频免费网站| 亚洲国产专区一区| 999zyz**站免费毛片| 亚洲老妈激情一区二区三区| 久久精品无码精品免费专区| 久久99亚洲网美利坚合众国| 男女做羞羞的事视频免费观看无遮挡| 亚洲二区在线视频| 日韩高清免费在线观看| a级毛片免费观看网站| 亚洲AV无码一区二区三区系列| 亚洲免费视频在线观看| 激情内射亚洲一区二区三区爱妻| 成人免费777777| 一区二区三区免费在线视频 | 亚洲国产成人va在线观看网址| 可以免费看的卡一卡二| 美女尿口扒开图片免费| 国产亚洲?V无码?V男人的天堂| 人人玩人人添人人澡免费| 亚洲AV无码久久久久网站蜜桃| 四虎影视精品永久免费网站| 国精产品一区一区三区免费视频 | 亚洲 欧洲 视频 伦小说| 亚洲精品国产高清不卡在线| 免费在线看污视频| 亚洲性无码一区二区三区| 国产亚洲?V无码?V男人的天堂| 亚洲免费在线观看视频| 男女猛烈无遮掩视频免费软件 | 最近免费中文字幕高清大全| 亚洲av无码偷拍在线观看| 亚洲Av无码精品色午夜|