• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Khan's Notebook GCC/GNU/Linux Delphi/Window Java/Anywhere

            路漫漫,長修遠,我們不能沒有錢
            隨筆 - 173, 文章 - 0, 評論 - 257, 引用 - 0
            數(shù)據(jù)加載中……

            CVS 服務器的安裝配置以及使用 redhat9

            CVS 服務器的安裝配置以及使用 redhat9

            作者: Khan
            時間: 2006-1-9
            環(huán)境: 服務器 Redhat 9.1? ,客戶端 :window 2000 pro

            因為有個項目要多人合作,所以選擇了cvs, 其實有其他選擇,如subversion,但是資料少所以只有使用這個
            早上9:00 - 15:00 終于配置完了服務器端和客戶端,并建立了一個倉庫使用,就將一些安裝使用的心得歸納
            了下來

            一 CVS服務器的安裝:
            1.查看你的操作系統(tǒng)上是否安裝了CVS:
            #> rpm -qa|grep cvs

            2.建立cvs用戶組:

            #> groupadd cvs

            3.建立cvs組的cvsroot用戶和所屬的目錄:

            #> useradd cvsroot -g cvs

            4.為cvsroot用戶添加密碼:

            #> passwd cvsroot

            5.改變 /cvsroot/ 的目錄屬性:

            #> chmod –R 770 /cvsroot

            6.改變用戶登陸身份:

            #> su cvsroot

            7.開始創(chuàng)建單個項目:

            #> cd /home/cvsroot
            #> mkdir smscgw
            #> mkdir smgp

            8.開始建立倉庫:
            這里我建立了兩個倉庫,用以介紹用戶名,密碼的設置方法
            cvs –d /home/cvsroot/smscgw init
            cvs –d /home/cvsroot/smgp init
            #> chmod –R 770 ./smscgw/ ./smgp/

            9.建立CVS服務啟動文件,我們使用xinetd方式:

            #> su - root 切換到root用戶身份
            #> cd /etc/xinetd.d
            #> vi cvspserver

            service cvspserver
            {
            ? disable = no
            ? flags = REUSE
            ? socket_type = stream
            ? wait = no
            ? user = root
            ? server= /usr/bin/cvs
            ? server_args= -f --allow-root=/home/cvsroot/smscgw --allow-root=/home/cvsroot/smgp pserver
            ? log_on_failure += USERID
            }

            10.加入cvs服務:

            #>vi /etc/services

            cvspserver 2401/tcp #pserver cvs service
            cvspserver 2401/udp #pserver cvs service
            11。啟動cvs服務:

            #> /etc/init.d/xinetd restart

            12.檢查cvspserver服務是否已經(jīng)啟動:

            #> netstat -l |grep cvspserver
            應該有如下結(jié)果:

            tcp 0 0 *:cvspserver *:* LISTEN


            二.CVS服務的用戶管理:
            1.創(chuàng)建可以登陸cvs服務器的用戶名和密碼:

            #> su cvsroot
            #> vi /home/cvsroot/smscgw/CVSROOT/passwd

            trotter:*****:cvsroot
            mimi:*****:cvsroot

            #>vi /home/cvsroot/smgp/CVSROOT/passwd

            trotter:*****:cvsroot
            gary:*****:cvsroot

            這兩個文件的意思是有trotter,mimi,gary三個cvs用戶,mimi擁有smscgw的使用權(quán)限,gary擁有smgp的使用權(quán)限,trotter擁有project1和project2的使用權(quán)限。登陸后的權(quán)限是cvsroot權(quán)限。
            注意:這里的cvs用戶和系統(tǒng)用戶是不同的。

            2.*****為密碼,由以下文件生成:

            #> vi /home/cvsroot/smscgw/passwd.pl

            #!/usr/bin/perl
            srand (time());
            my $randletter = "(int (rand (26)) + (int (rand (1) + .5) % 2 ? 65 : 97))";
            my $salt = sprintf ("%c%c", eval $randletter, eval $randletter);
            my $plaintext = shift;
            my $crypttext = crypt ($plaintext, $salt);
            print "${crypttext}
            ";

            #>chmod a+x ./passwd.pl

            3.如果你想生成一個密碼是"123456",則:

            #> /cvsroot/passwd.pl "123456"

            回車即可得到加密密碼,用其替換passwd文件中的*****

            4.配置倉庫
            以smscgw倉庫為例
            #> cvs –d /home/cvsroot/smscgw init 這個指令執(zhí)行成功的話,會產(chǎn)生/home/cvsroot/smscgw/CVSROOT這個目錄

            編輯modules模塊文件(直接在服務器上用vi編輯,也可以用cvs客戶端將CVSROOT導出后,本地編輯,然后提交)
            #> vi /home/cvsroot/smscgw/CVSROOT/modules

            # Three different line formats are valid:
            #?? ?key?? ?-a??? aliases...
            #?? ?key [options] directory
            #?? ?key [options] directory files...
            #
            #????? 模塊名   [options] ?
            ?????? SMSCGW??? -a???????? smscgw3

            # 其他選項
            # Where "options" are composed of:
            #?? ?-i prog?? ??? ?Run "prog" on "cvs commit" from top-level of module.
            #?? ?-o prog?? ??? ?Run "prog" on "cvs checkout" of module.
            #?? ?-e prog?? ??? ?Run "prog" on "cvs export" of module.
            #?? ?-t prog?? ??? ?Run "prog" on "cvs rtag" of module.
            #?? ?-u prog?? ??? ?Run "prog" on "cvs update" of module.
            #?? ?-d dir?? ??? ?Place module in directory "dir" instead of module name.
            #?? ?-l?? ??? ?Top-level directory only -- do not recurse.
            #
            # NOTE:? If you change any of the "Run" options above, you'll have to
            # release and re-checkout any working directories of these modules.
            #
            # And "directory" is a path to a directory relative to $CVSROOT.
            #
            # The "-a" option specifies an alias.? An alias is interpreted as if
            # everything on the right of the "-a" had been typed on the command line.
            #
            # You can encode a module within a module by using the special '&'
            # character to interpose another module into the current module.? This
            # can be useful for creating a module that consists of many directories
            # spread out over the entire source repository.


            三.使用

            1.將本地工程導入到遠程倉庫
            以windows 下的cvs客戶端為例,我使用的是TortoiseCVS 這個軟件,一個嵌入Explorer的客戶端
            在你需要導入到服務器的工程目錄上點鼠標右鍵,選擇 cvs-->創(chuàng)建新模塊
            選擇協(xié)議,輸入帳號密碼,端口,倉庫文件夾,模塊名
            也可以選擇在CVSROOT輸入框中輸入:pserver:username:password@ip:port/home/cvsroot/repository/smscgw
            注意目錄結(jié)構(gòu)父目錄和子目錄最好不要重名,也就是說最好不要出現(xiàn) smscgw/smscgw這樣的目錄結(jié)構(gòu)

            輸入完以后選擇 "確定"
            成功導入,該文件夾會有一個綠色的小標志,進入該目錄,鼠標右鍵 "CVS添加",將需要導入的文件添加到倉庫

            2.將遠程倉庫導出到本地

            在任何一個目錄下 鼠標右鍵 CVS取出
            輸入相應的信息, 選擇"確定"

            posted on 2006-01-12 09:53 Khan 閱讀(1021) 評論(0)  編輯 收藏 引用 所屬分類: 周邊技術(shù)

            久久久精品国产| 国产精品久久成人影院| 国产精品欧美久久久天天影视| 天天综合久久一二三区| 久久久久久久国产免费看| 国产精品无码久久四虎| 久久精品国产精品青草app| 91精品国产高清久久久久久io | 亚洲狠狠久久综合一区77777 | 99re这里只有精品热久久 | 久久人爽人人爽人人片AV| 久久精品国产2020| 亚洲香蕉网久久综合影视 | 成人久久久观看免费毛片| 韩国免费A级毛片久久| 九九精品99久久久香蕉| 久久国产成人精品麻豆| 狠狠人妻久久久久久综合| 国产精品无码久久久久| 亚洲精品美女久久久久99小说 | 国产精品99久久不卡| 91久久香蕉国产熟女线看| 国产农村妇女毛片精品久久| 久久影院久久香蕉国产线看观看| 久久久久一本毛久久久| 伊人久久精品无码二区麻豆| 久久精品中文无码资源站| 国产一区二区三区久久精品| 国内精品久久久久久不卡影院| 伊人色综合久久天天人守人婷| 国产成年无码久久久免费| jizzjizz国产精品久久| 久久精品中文字幕有码| 久久精品国产亚洲av麻豆蜜芽| 精品无码久久久久久午夜| 久久久国产精华液| 日韩AV无码久久一区二区| 久久99国产精品成人欧美| 国产成人精品综合久久久久| 青青青伊人色综合久久| 奇米影视7777久久精品人人爽|