在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > CVS完全手冊(二)

            CVS完全手冊(二)

            ——
            作者: 時間:2007-04-05 來源: 收藏

            分支管理
            =============================
            可以將歷史劃分成多個獨(dú)立,并行和互不影響的分支,并去修改歷史
            1 標(biāo)定里程碑
            ------------------------------------
            cvs tag release_1_0 prj_dir_name

            2 開始一個新的里程碑:
            ------------------------------------
            cvs commit -r 2
            標(biāo)記所有文件開始進(jìn)入2.x的開發(fā)
            注意:里的revsion和軟件包的發(fā)布版本可以沒有直接的關(guān)系。但所有文件使用和發(fā)布版本一致的版本號比較有助于維護(hù)。

            3 建立分支
            ------------------------------------
            在開發(fā)項(xiàng)目的2.x版本的時候發(fā)現(xiàn)1.x有問題,但2.x又不敢用,則從先前標(biāo)記的里程碑:release_1_0導(dǎo)出一個分支release_1_0_b2
            cvs rtag -b -r release_1_0 release_1_0_bugfixes prj_dir_name
            -r修飾的是release_1_0,-b 修飾的是release_1_0_bugfixes,cvs的版本號將變?yōu)?位,以后每分一次支,版本號增加2位

            4 分支并行開發(fā)
            ------------------------------------
            一些人先在另外一個目錄下導(dǎo)出release_1_0_bugfixes這個分支:解決1.0中的緊急問題,
            cvs checkout -r release_1_0_bugfixes
            分支是可以修改的,并自動提交到分支上去
            而其他人員仍舊在項(xiàng)目的主干分支2.x上開發(fā)

            5 tag分支
            ------------------------------------
            在release_1_0_bugfixes上修正錯誤后,標(biāo)記一個1.0的錯誤修正版本號
            cvs tag release_1_0_bugfixes_p1

            6 合并分支
            ------------------------------------
            如果2.0認(rèn)為這些錯誤修改在2.0里也需要,也可以在2.0的開發(fā)目錄下合并release_1_0_patch_1中的修改到當(dāng)前代碼中:
            cvs update -j release_1_0_bugfixes

            7 再次合并分支
            ------------------------------------
            如果又發(fā)現(xiàn)1.x新的bug,我在分支已經(jīng)修改了,并標(biāo)定了release_1_0_patch_2,我們同樣希望把它合并到主干上來
            cvs update -j release_1_0_bugfixes_p1 -j release_1_0_bugfixes
            它的意思是把release_1_0_bugfixes_p1(tag)到release_1_0_bugfixes(分支)變化了的部分合并到當(dāng)前文件(主干)
            否則用6步的方法,則以前合并的內(nèi)容會重新合并
            注意:此時我們使用第5步的結(jié)果
            教訓(xùn):盡早頻繁的tag,但同時不能導(dǎo)致tag泛濫,tag在不同的分支里可以同名

            8 鎖定分支
            ------------------------------------
            cvs admin -l r_0_2 鎖定r_0_2分支
            cvs admin -l    鎖定主分支

            9 設(shè)置缺省分支
            ------------------------------------
            cvs admin -b r_0_2 設(shè)定r_0_2為缺省分支
            cvs admin -b    設(shè)定主分支

            10 刪除歷史記錄
              如果歷史文件過多,或確定有幾個階段的穩(wěn)定版本,我們可以刪除一些歷史文件,以保證cvs的性能
            cvs admin -o rev1:rev2 filename 刪除rev1到rev2的版本,含這兩個版本
            cvs admin -o rev1::rev2 filename 刪除rev1到rev2的版本,不含這兩個版本
            如果省略rev1,表示刪除本分支rev2之前的所有版本
            如果省略rev2,表示刪除本分支rev1之后的所有版本
            cvs admin -o rev filename 刪除rev這個版本的文件
            注意:有tag的版本不能被刪除,所以tag很重要,而且只能刪單個文件


            CVS服務(wù)器的安裝和配置
            =============================
            1 下載源碼
            ------------------------------------
              可從很多地方下載cvs,也可從官方ftp://ftp.gnu.org/gnu/cvs/下載

            2 安裝,同很多源碼安裝一樣
            ------------------------------------
              gunzip cvs-1.10.6.tar.gz
              tar xvf cvs-1.10.6.tar
              cd cvs-1.10.6
              ./configure
              make
              make install

            3 包的安裝,如果找到具體操作系統(tǒng)的安裝包,則見此操作系統(tǒng)的使用說明,比如linux為
            ------------------------------------
              rpm -ivh cvs-1.10.8-3.i386.rpm即可

            4 建立Repository
            ------------------------------------
              groupadd cvs(要訪問cvs的用戶加入此組)
              useradd cvsroot
              mkdir /home/cvsroot
              cvs -d /home/cvsroot init
              chown -R cvsroot.cvs /home/cvsroot
              chmod -R ug+rwx /homecvsroot

            5 配置/etc/services文件
            ------------------------------------
             添加cvspserver,如果有就不要加了
            cvspserver 2401/tcp # cvs client/server operations
            cvspserver 2401/udp # cvs client/server operations

            6 配置inetd
            ------------------------------------
              編輯/etc/inetd.conf,加入
            cvspserver stream tcp nowait root /usr/bin/cvs cvs --allow-root=/home/cvsroot pserver
              如果使用tcpwrappers
            cvspserver stream tcp nowait root /usr/sbin/tcpd /usr/bin/cvs --allow-root=/usr/local/newrepos pserver
              如果使用xinetd,編輯/etc/xinetd.d/cvspserver
              service cvspserver
             {
            disable = no
            socket_type = stream
            wait = no
            user = root
            env = HOME=
            server = /usr/bin/cvs
            server_args = -f --allow-root=/home/cvsroot pserver
              }
            pserver表示是口令認(rèn)證,如果要用ssh方式則應(yīng)該是server
            --allow-root是Repository的目錄,可以有多個此選項(xiàng)來建立多個Repository

            7 驗(yàn)證配置成功
              cvs login看時候能成功登錄,有幾個可能失敗的地方
              用戶是否屬于cvs組和目錄權(quán)限
              inetd是否正常配置和啟動,--allow-root是否寫對
            8 導(dǎo)入項(xiàng)目
              把你的所有項(xiàng)目文件放入prj_dir
              cd prj_dir
             cvs import -m "this is a cvstest project" prj_dir v_0_0_1 start
              v_0_0_1是這個分支的總標(biāo)記.沒啥用(或曰不常用)
             start 是每次 import 標(biāo)識文件的輸入層次的標(biāo)記,沒啥用。


            Watchers
            =============================
            cvs提供了watch的功能,來幫助大家了解誰在干什么,誰在對文件做什么操作,它發(fā)email通知,以協(xié)調(diào)大家的工作。
            1 開啟watch功能
              在CVSROOT/notify文件中加入下面行
              ALL mail %s -s "CVS notification"
            2 設(shè)定外部email地址
              缺省是把通知信息發(fā)給本機(jī)的email,要發(fā)給別的地址,在CVSROOT/users加入如下內(nèi)容
              hwz:[email protected]
            3 watch文件的修改
              cvs watch add filename
              cvs watch remove filename
            4 watch文件的修改
              watch功能是個大家協(xié)調(diào)的功能,大家必須按一個統(tǒng)一的工作流程來做,如果不cvs edit,cvs沒有辦法通知修改情況
              cvs edit filename
              修改文件
              cvs unedit filename
            5 提醒大家使用watch功能
              cvs沒有強(qiáng)制使用watch的功能,只有這個功能在用戶提交完后自動把文件變?yōu)橹蛔x的,再使用cvs edit filename就可以修改它了
              cvs watch on
            6 查看那人人再watch
              cvs watchers


            WinCVS的安裝和配置
            =============================
            1、WinCVS簡介:
            WinCVS是CVS的一個客戶端軟件,它運(yùn)行在Windows上,用來在Windows上登錄CVS服務(wù)器,然后進(jìn)行一些CVS相關(guān)的操作與管理。由于當(dāng)前很多的企業(yè)內(nèi)部都采用Linux/Unix做服務(wù)器,而用Windows做客戶端,所以,WinCVS與CVS服務(wù)器配合使用將組成最強(qiáng)有力的版本控制與管理的系統(tǒng)之一。
            2、WinCVS的下載與安裝;
              最新的WinCVS可以從http://sourceforge.net/project/showfiles.php?group_id= 10072地址下載到,也可以在http://sourceforge.net/project 上下載到最新的或其它版本的WinCVS。
              下載到相應(yīng)的版本后根據(jù)向?qū)нM(jìn)行安裝,已經(jīng)要使用CVS的用戶,安裝這個WinCVS應(yīng)該沒什么問題吧!
            3、配置WinCVS:
            a、Admin->;Preferences…/general
               CVSROOT 按cvsroot格式填寫
               Authentication:用來配置cvs服務(wù)器的認(rèn)證方式一般只要選擇默認(rèn)的pserver方式就可以
                   要注意的是必須與cvs服務(wù)器配置時所指定的認(rèn)證方式一致
                               如果要用ssh server,確認(rèn)在windows中安裝了openssl,openssh
            a、Admin->;Preferences…/Globals
              此項(xiàng)的配置主要是要注意這幾選項(xiàng):
              Checkout read-only:默認(rèn)是選中的,建議不要修改,只是修改文件前需要先edit selection,提交后又自動變?yōu)橹蛔x
                           這樣有兩個好處:
                            一個是可以通過unedit selection來undo你做的修改
                            二是可以符合watch功能的使用規(guī)范
              Prune empty directories: 不要選上,否則,會自動刪除空目錄;
            4、登錄服務(wù)器:
               選擇Admin->;login,將出現(xiàn)如下對話框要求用戶輸入登錄口令
               wincvs中命令的exit code 0表示正確執(zhí)行,否則是失敗,一般成功顯示為
               *****CVS exited normally with code 0*****
            5、winCVS的使用都有菜單,大家熟悉cvs的使用的話,用起來是很容易的,我就不多說了


            CVSWEB的安裝
            =============================
            CVSWEB就是CVS的WEB界面,可以大大提高程序員定位修改的效率:
            使用的樣例可以看:http://www.freebsd.org/cgi/cvsweb.cgi

            CVSWEB的下載:CVSWEB從最初的版本已經(jīng)演化出很多功能界面更豐富的版本,這個是個人感覺覺得安裝設(shè)置比較方便的:
            http://www.spaghetti-code.de/software/linux/cvsweb/

            1 下載解包:
            tar zxf cvsweb.tgz

            2 把配置文件cvsweb.conf復(fù)制到apache的配置目錄下
             cp cvsweb.conf /path/to/apache/conf
            轉(zhuǎn)到/path/to/apache/conf下并修改cvsweb.conf:
            修改CVSROOT路徑設(shè)置:
            %CVSROOT = (
            'Development' =>; '/path/to/cvsroot/dev', #<==修改指向本地的CVSROOT
            'test' =>; '/path/to/cvsroot/test', #<==修改指向本地的CVSROOT
            );
            如果有多個cvsroot,這定缺省的cvsroot
            $cvstreedefault = 'test';

            3 其它個性化設(shè)置
             cvsweb.conf還有許多其它個性化設(shè)置,常見的有這些變量:
             $logo 圖標(biāo)設(shè)置
             $defaulttitle 標(biāo)題設(shè)施
             $address 管理員email地址設(shè)置
             $long_intro 介紹文字
             $short_instruction  說明文字

            4 把文件cvsweb.cgi復(fù)制到apache的cgi目錄
             cp cvsweb.cgi /path/to/apache/cgi-bin
             轉(zhuǎn)到/path/to/apache/cgi-bin修改cvsweb.cgi
            修改cvsweb.cgi讓CGI找到配置文件:
            $config = $ENV{'CVSWEB_CONFIG'} || '/path/to/apache/conf/cvsweb.conf';

            5 中文支持
             讓cvsweb正確顯示中文,找到sub html_header($)函數(shù),
             然后在<html>;和<title>;之間插入一行,修改如下
             <html>;
             <meta http-equiv="Content-Type" content="text/html; charset=gb2312">;
             <title>;$title</title>;
            6 復(fù)制所有的gif,png文件到apache的icons目錄
            7 增加訪問控制
            CVSWEB可不能隨便開放給所有用戶,因此需要使用WEB用戶認(rèn)證:
            先生成 passwd:
            /path/to/apache/bin/htpasswd -c cvsweb.passwd user

            修改httpd.conf: 增加
            <Directory "/path/to/apache/cgi-bin/cvsweb/">;
            AuthName "CVS Authorization"
            AuthType Basic
            AuthUserFile /path/to/cvsweb.passwd
            require valid-user
            </Directory>;

             

            ==========================================================================
            參考文檔:
            CVS的常用命令速查手冊,車東,[email protected]
            CVS服務(wù)器與WinCVS的配置與使用,吳炎溪,[email protected]
            CVS速成班,作者不祥
            cvs book,Karl Fogel,[email protected]



            關(guān)鍵詞: CVS

            評論


            技術(shù)專區(qū)

            關(guān)閉