Concurrent Versions System. 공동 프로젝트를 위한 소스 버전 관리 툴. 오픈소스계열에서 Source Repository 의 용도로서 많이 이용된다. 활발하게 이용되고 있는 곳에 대해서는 http://sourceforge.net 에서 많이 볼수 있다.
----
----
정보 ¶
가장 쉬운 한글 문서들 ¶
- http://kldp.org/KoreanDoc/html/CVS_Tutorial-KLDP/x39.html - CVS At a Glance.
- http://kldp.org/root/cvs.html
- http://network.hanbitbook.co.kr/view_news.htm?serial=298 - CVS 소개.
- http://network.hanbitbook.co.kr/view_news.htm?serial=299 - CVS 관리. tag, branch 등에 대한 간단한 소개.
영문 튜토리얼 ¶
관련 사이트들 ¶
- http://www.cvshome.org
- http://cvsbook.red-bean.com/ CVS의 자세한 도움말
- http://www.chonga.pe.kr/document/programming/cvs/index.php 해당 사이트에서 제작한 한글 Reference
For Win ¶
- TortoiseCVS - 윈도우즈 탐색기와 연동되는 CVS
- WinCVS
- CvsNt
- http://www.componentsoftware.com/ :RCS 도 있음
cvs web client ¶
view cvs 는 Python CGI로 돌아가며, 인스톨 스크립트가 있어서 설치하기 아주 쉽다. 추천.!
설치는 간단하다. install script 를 이용, CGI 가 돌아가는 경로에 설치한뒤, viewcvs.conf 에서 CVS ROOT 를 설정해주면 끝.
현재 ZeroPage 의 경우 CVSROOT 는 /home/CVS 이므로 viewcvs.conf 의 경우 다음과 같이 설정되어있다. (여기서 Development 는 일종의 이름. 여러개의 root 존재시에는 ','로 구분한다.
설치는 간단하다. install script 를 이용, CGI 가 돌아가는 경로에 설치한뒤, viewcvs.conf 에서 CVS ROOT 를 설정해주면 끝.
~cpp cvs_roots = Development : /home/CVS default_root = Development
ZeroPage CVS ¶
- 현재 ZeroPage 에서는 CVS 서비스를 하고 있다. http://zeropage.org/viewcvs/cgi/viewcvs.cgi 또는 ZeroPage 홈페이지의 왼쪽 메뉴 참조. 웹 클라이언트로서 viewcvs 를 이용중이다. 일반 CVS Client 로서는 Windows 플랫폼에서는 TortoiseCVS(소위 '터틀'로 불린다.) 를 강력추천! 탐색기의 오른쪽 버튼과 연동되어 아주 편리하다.
- ZeroPage의 CVS 계정을 원하는 회원은 서버관리자(neocoin)에게 연락 바람 자세한 내용은 홈페이지 왼쪽 메뉴 참고
- ZeroPage의 CVS의 읽기 전용 계정은 cvs_reader 에 암호는 asdf 이다.
Tutorial ¶
Tutorial은 조금씩 추가 됩니다. | |
CVS/길동씨의CVS사용기ForLocal | WinCVS 설치 전제, CVS를 처음 접하는 사람이라면, Local을 이용해서 감을 잡으세요. |
CVS/길동씨의CVS사용기ForRemote | WinCVS 설치 전제 ZeroPage CVS를 |
Trouble shooting ¶
- cvs에 접속이 되지 않을때
- telnet cvs_server 2401(기본포트) 로 접속 여부를 확인할 수 있다.
- 이때, connection refused 등의 메세지가 발생한다면 /etc/hosts.allow 파일에 cvs:ip 를 추가해준다.
- telnet cvs_server 2401(기본포트) 로 접속 여부를 확인할 수 있다.
- permission denied가 발생할 경우
- 증상: cvs 에 로그인후 프로젝트를 import 하려 하려는등의 파일을 올리려는 액션이 발생했을때 위의 에러가 출력된다.
- 원인: 어떠한 이유에 의해, cvs를 실행하는 환경이 cvs 사용자와 다를 경우 혹은 권한이 없을 경우 발생한다.
- 해결: cvs를 띄우는 환경을 적절하게(권한이 있도록) 설정해준다.
- 참고: from- http://www.loria.fr/~molli/fom-serve/cache/352.html
~cpp cvs [server aborted]: can't chdir(/root): Permission denied This problem is quite common apparently... <the problem>snip > I've been trying to use CVS with the win-cvs client without much > success. I managed to import a module but when I try to do a > checkout I get the following error message: > > cvs checkout chargT > > cvs server: cannot open /root/.cvsignore: Permission denied > > cvs [server aborted]: can't chdir(/root): Permission denied > > I'm using the cvs supplied with RedHat 6.1 - cvs 1.10.6 /snip</the> --------- A very helpful soul, Robert Cragie, helped me out with this one. Here's his reply to my question above.. : I've been down this road already. It is not actually a bug. What you need to do is to invoke your pserver with a clean environment using 'env'. My entry in /etc/inetd.conf looks like this: cvspserver stream tcp nowait root /usr/sbin/tcpd /usr/bin/env - /usr/bin/cvs -f --allow-root=/usr/local/cvsroot pserver where '/usr/local/cvsroot' is the path of my repository - replace this with yours. Apparently, the problem is actually with Linux - daemons invoked through inetd should not strictly have any associated environment. In Linux they get one, and in the error case, it is getting some phoney root environment. Hope this helps, Robert Cragie Design Engineer, Jennic Ltd. Sheffield UK marcus.berglund@entra.se
- 증상: cvs 에 로그인후 프로젝트를 import 하려 하려는등의 파일을 올리려는 액션이 발생했을때 위의 에러가 출력된다.
버전 관리 프로그램 몇가지 : IBM의 CLEAR/CASTER, AT&T의 SCCS, CMU(카네기 멜론 대학)의 SDC, DEC의 CMS, IBM Rational의
~cpp ClearCase
, MS의 ~cpp Visual SourceSafe
, Perforce, SubVersion, AlianBrain
돈이 남아 도는 프로젝트 경우 {{{~cpp ClearCase}}}를 추천하고, 오픈 소스는 돈안드는 CVS,SubVersion 을 추천하고, 게임업체들은 적절한 가격과 성능인 AlianBrain을 추천한다. Visual SourceSafe는 쓰지 말라, MS와 함께 개발한 적이 있는데 MS내에서도 자체 버전관리 툴을 이용한다.