首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

CVS 並行版本系統:Linux 伺服器架設與專案實戰完整指南

     編輯:Java 程式設計入門

CVS 核心概念

CVS(Concurrent Versions System)是基於 RCS/SCCS 發展的版本控制系統,採用「中央倉庫」模式:伺服器端建立倉庫統一管理原始碼,開發者下載(Checkout)至本地修改,再提交(Commit)回倉庫。可實現版本追蹤、衝突控制、多人協作無覆蓋風險。

一、Linux 伺服器端安裝與配置

1. 確認/安裝 CVS 套件

# rpm -qa | grep cvs
# 若未安裝,從安裝光碟或 https://www.cvshome.org 取得 rpm 包安裝

2. 建立 CVSROOT 目錄與權限

# groupadd cvs
# adduser cvsroot
# su - cvsroot
$ chmod 771 .   # 賦予同組讀寫權限

3. 初始化倉庫

$ cvs -d /home/cvsroot init

4. 配置網路服務

inetd 系統(編輯 /etc/inetd.conf):

cvsserver stream tcp nowait root /usr/bin/cvs cvs -f --allow-root=/home/cvsroot pserver

xinetd 系統(建立 /etc/xinetd.d/cvspserver):

service cvsserver {
    socket_type = stream
    wait = no
    user = root
    server = /usr/bin/cvs
    server_args = -f --allow-root=/home/cvsroot pserver
    log_on_failure += USERID
    only_from = 192.168.0.0/24
}

同步編輯 /etc/services 加入:cvsserver 2401/tcp

5. 設定用戶存取權限

# 編輯 /etc/group,將開發者加入 cvs 組
cvs:x:105:laser,gumpwu

6. 重啟服務並驗證

# killall -HUP inetd          # inetd 系統
# /etc/rc.d/init.d/xinetd restart  # xinetd 系統
# netstat -lnp | grep 2401    # 確認 port 2401 監聽中

二、伺服器權限精細控制

在 $CVSROOT/CVSROOT/ 目錄下管理三個檔案:

  • passwd:CVS 專用帳號格式 用戶名:加密密碼:對應系統用戶
  • readers:僅讀權限用戶列表
  • writers:讀寫權限用戶列表(不可同時出現在 readers)

實例配置

# passwd
laser:$xxefajfka:cvspub
gumpwu:$ajfaal323:cvspub
henry:$fajkdpaieje:cvspub
betty:fjkalffjieinfn:cvspub
anonymous::cvspub

# readers
anonymous
betty

# writers
laser
gumpwu
henry

三、客戶端操作與專案實戰

建立新專案匯入倉庫

$ cd /path/to/project
$ cvs import -m "Initial import" project_name vendor_tag release_tag

注意:匯入目錄應為「乾淨」原始碼,勿包含編譯產物。

Windows 客戶端 WinCVS 連線設定

  • CVSROOT::pserver:admin@192.168.1.9:/home/cvsroot
  • Authentication:passwd file on the cvs server
  • Version:CVS 1.10 (Standard)

JBuilder 整合 CVS 工作流

  1. Team → Select Project VCS 選擇 CVS
  2. 修改檔案前:CVS → Update 取得最新版
  3. 編輯鎖定:CVS → Edit
  4. 提交變更:CVS → Commit

實戰案例分享

作者團隊在 Linux + Java + JBuilder 環境下導入 CVS 管理 ERP 專案,有效解決多人同時修改同一檔案導致的程式錯誤問題,版本控制效果顯著。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved