간단 CVS 메뉴얼 = CVS 사용 in linux = 설치, 로그인 과정 생략, 팀원의 아이디로 로그인 하면 쓰기, 읽기 권한 허용 === 프로젝트 처음에 가지고 오기 === 원하는 디렉토리에 간다. {{{~cpp cvs co ProjectZephyrus }}} = WinCVS in Windows = 설치 [http://www.wincvs.org WinCVS]를 [http://sourceforge.net/project/showfiles.php?group_id=10072&release_id=83299 다운로드] 해서 설치 === WinCVS Gui 환경 === ==== 설정 ==== 메뉴->Admin->Preference 에서 General tab에 CVSROOT의 텍스트상자(가장 하단 상자)에 {{{~cpp 자신아이디@165.194.17.15:/home/CVS }}} 라고 넣는다. 이렇게 되면 나머지 인자들도 다 들어간다. ==== 로그인 ==== 메뉴->Admin->login , 암호입력 ==== 프로젝트 처음에 가지고 오기 ==== 메뉴->Create->Checkout module {{{~cpp Module name.. : ProjectZephyrus Local folder.. : 자신이 작업할 공간 임의로 설정 }}} ==== 프로젝트 업데이트 ==== === Command line에서 === ==== 설정 ==== ===== NT ===== {{{~cpp 내컴퓨터->등록정보->고급->환경변수->새로만들기(N) 변수이름 : CVSROOT 변수값 : :pserver:자신의아이디@165.194.1.15:/home/CVS }}} 설정후 사용 (98의 2번 방법도 무리 없음) ===== 98 : 1,2번 아무거나 편한대로 ===== '''1. 패스 설정로 하기''' Autoexec.bat 에서 {{{~cpp SET CVSROOT=":pserver:자신의아이디@165.194.17.15:/home/CVS" }}} 추가후 리부팅 <-확인 안해봤음 '''2. 배치 화일로 하기''' cvs98.bat 작성 {{{~cpp copy con cvs98.bat cvs -d :pserver:자신의아이디@165.194.17.15:/home/CVS %1 %2 %3 %4 %5 %6 %7 %8 %9 ^Z }}} 이후 {{{~cpp cvs98 login }}} 이런 식으로 사용 = Admin 세팅 in ZeroPage Server(2002.5) = 설치 과정은 생략 (linux 배포본에 들어 있다.) === 저장소 초기화 === {{{~cpp ZeroPage서버는 /home/CVS 를 저장소로 잡았다. cvs -d /home/CVS init }}} === 권한 설정 === ==== local 사용자를 위한 서버 설정 ==== '''1. 사용자 그룹 추가''' {{{~cpp groupadd 그룹 추가, 우리는 cvs그룹을 추가 etc/group 를 아래식으로 추가, 수정 vi /etc/group . . . cvs:x:536:neocoin,reset }}} '''2. 추가된 그룹에 권한 설정''' {{{~cpp chgrp -R cvs /home/CVS chmod ug+rwx /home/CVS /home/CVS/CVSROOT or chgrp -R cvs /home/CVS chmod 775 /home/CVS /home/CVS/CVSROOT }}} 그룹 확인 {{{~cpp groups 확인한아이디 }}} 이제 ZeroPage 서버내에서 cvs 그룹에 등록된 사용자는 ZP내에서는 접근 가능 ==== 원격 사용자를 위한 서버 설정 ==== ''' 1. service에 포트 등록''' {{{~cpp vi /etc/services . . cvspserver 2401/tcp }}} '''2. ZeroPage 서버는 현재 Redhat 7.0이므로 xinetd를 이용하므로 세팅''' {{{~cpp vi /etc/xinetd.d/cvspserver }}} 를 만들고 내용은 {{{~cpp # default: on # description: The cvspsever serves CVS Passowrd Server sessions; it uses \ # unencrypted username/password pairs for authentication. service cvspserver { disable = no flags = REUSE socket_type = stream wait = no user = root server = /usr/bin/cvs server_args = --allow-root=/home/CVS pserver log_on_failure += USERID env = HOME=/home/CVS } }}} '''3. 재시작', stop and start 나와야 함''' {{{~cpp /etc/rc.d/init.d/xinetd restart }}} '''4. 프로젝트 import - CVS 에 프로젝트 열기''' 보통 다음과 같은 방식으로 한다. {{{~cpp cvs import -m "메시지" 프로젝트이름 vender_tag release_tag }}} === CVS 문제 해결 === ==== 개개인의 권한 문제 ==== * 가상의 유저를 파일의 권한을 그자(?)에게 돌리고, CVS내부 기록은 각 유저가 하도록 한다. . * vi /etc/passwd 에 다음 줄 추가. 앞숫자는 유저 뒤 숫자는 권한 {{{~cpp cvs_man:*:548:536:Pubilc CVS Account for Project Dummy:/home/CVS/:/bin/false }}} * vi /etc/group {{{~cpp cvs:x:536:.... ,cvs_man }}} * vi /home/CVS/CVSROOT/passwd {{{~cpp ...:...:cvs_man ...:...:cvs_man }}} ---- ["ProjectZephyrus"]