(2) CVS Repositories 뷰창에서 마우스 오른쪽을 클릭 -> New -> Repository Location.. 을 클릭하여 CVS연결 마법사를 엽니다.
(3) 열린 마법사창에 위 3번 항목의 내용들을 채워 넣고 Finish를 누릅니다.
(4) :pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse 항목이 생겼을 겁니다. 이때 + 로 트리 확장을 하면 Head,Branches,Vesrsions,Dates항목이 나올겁니다. 이때 HEAD하위를 확장하면 eclipse 패키지들이 모습을 드러내게 됩니다.
(5) 원하는 패키지에서 오른클릭후 Check Out As... 항목을 선택합니다.
(6) 그리고 패키지를 가져올 프로젝트를 선정해주면 완료~! 입니다.
마지막으로 CVS Repository Path 항목을 확인합니다. 이 경로들을 사용하여 각종 오픈 소스 프로젝트의 소스를 받아서 보실수 있습니다.
아래 글을 열어 보시면 좀 더 자세하게 CVS 설정과 check-out, check-in 하는 방법에 대해 소개해뒀습니다 ^^
(스크롤 압박 느껴서 묶어 뒀다는^^;;)
이글은 Eclipse 에서 CVS를 연동하여 개발하는 방법을 간단히 설명합니다.
CVS Repository 구성 및 프로젝트 구성등은 관련 CVS 문서를 참조하세요.
# Eclipse 버젼은 3.11을 기준으로 합니다.
# CVS 버젼은 WinCVS 2.5 를 사용했지만, 1.1 등 이하버젼에서도 문제는 없습니다.
1. 이클립스를 실행하고, Perspective 를 CVS 환경으로 전환합니다.
# 이미 perspective 가 등록되어 있거나, cvs perspective 를 사용한 적이 있다면 오른쪽 상단에 아래와 같이 바로 선택합니다.
# 위와 같이 바로 perspective 가 나타나지 않을경우엔 바로왼쪽의 perspective를 추가하여 선택합니다.
2. 왼쪽트리 CVS Repositories 에서 새로운 저장소를 추가합니다. # 트리바탕 아무데서나 오른쪽버튼 클릭후, New->Repository Location 을 선택합니다.
# 각 호스트 로케이션및 관련정보를 입력합니다. 관련정보를 모를경우, CVS 설치 및 관리자에게 문의합니다.
Save password 에 체크합니다. (초기 연결시 한번만 확인하게 됩니다.)
# 아래와 같이 성공적으로 cvs repository 가 추가됩니다.
HEAD : 현재 메인으로 진행중인 버젼트리
Branches : HEAD 에서 가지식으로 뻣어나온 가지트리
Versions : 각 버젼별 태그로 분리되는 버젼들
Dates : 날짜별 태그로 분리되는 날짜들.
브렌치나 버젼, Date 태그등을 사용하는 방법은 CVS 관련문서를 참조하세요.
일반적으로 HEAD에서 작업합니다만, 일부만 변경 또는 버젼을 배포할경우 해당 태그들을 사용합니다.
3. 추가한 저장소를 로컬로 싱크합니다.
# 저장소가 새롭게 추가되었으나, 이 Perspective 에서 직접 소스를 수정하거나 작업하진 않습니다.
로컬에 해당 파일들을 checkout 하여 모두 가져오고, 작업한후, 작업내용을 서버에 반영합니다.
작업과정은 아래에서 계속 설명합니다.
# 아래와 같이 HEAD 에 있는 특정 모듈을 체크아웃합니다.
방법 1 : 새로운 workspace 에 새로운 프로젝트로 체크아웃합니다.
방법 2 : 기존 프로젝트에 체크아웃합니다. (workspace는 해당 프로젝트에 설정을 그대로 따라갑니다.)
여기선 방법 1 로 default workspace에 새로운 프로젝트로 체크아웃합니다.
체크아웃하고자 하는 모듈 (프로젝트 상위디렉토리) 에서 오른쪽버튼 클릭 -> Check Out 을 선택합니다.
# 본인이 원래 사용하던 Perspective 로 전환합니다. (Java, Myeclipse등등..)
또는, Package Explorer 나 Navigator 등의 뷰창을 새로 open 합니다.
아래와 같이 새로운 프로젝트가 추가된것을 확인할수 있습니다.
보이는 캡쳐화면과 나타나는 모습등이 약간 다를순 있습니다. 프로젝트에 CVS HOST를 보여주거나, 아이콘을 변경하거나,
버젼태그등을 보여주는 내용등은 설정의 decoration 에서 임의로 변경할 수 있습니다.
4. Add/Update/Delete/Commit
# update 임의 팩키지에 오른쪽버튼 -> Team 메뉴에 보시면 CVS 관련 Command 들이 보입니다.
update 는 현재까지 서버에 반영된 최신버젼내용을 자신의 로컬과 싱크합니다.
작업전에 항상 update 수행하는것을 잊지마세요. (이클립스의 경우 설정에 따라, 초기 프로젝트 로딩시나 일정주기로 자동 update 를 수행하게 되어있습니다.)
# 소스수정
임의 파일을 하나 열어 특정내용으로 소스를 수정해봅니다.
수정하게 되면 아래화면처럼 ">"표시가 되면서 해당 소스가 서버와 달라졌다는걸 표시해줍니다.
이것을 Dirty Tag 라고 합니다.
이렇게 수정한 내용을 서버에 반영할려면 Commit 을 수행하시면 됩니다.
위의 team->commit 명령입니다.
1. 주의하실것은 commit 전엔 타 개발자의 로컬과 서버엔 반영되지 않은 상태입니다만, commit 을 수행하시면 모든 내용이 서버에 업데이트 되고, 해당 내용을 update 한 타 개발자의 로컬에도 전부 변경된 소스가 반영됩니다. 당연히 불완전한 소스를 커밋하거나 너무 자주 커밋하는 습관은 안좋습니다. 어느정도 로컬에서 검증되었을때 커밋을 수행하세요.
2. 커밋은 각 파일개별로, 또는 최상위 디렉토리에서 모든 변경된 사항을 반영할수 있습니다. 물론, 상위 디렉토리에서 커밋을 수행하면 됩니다.
# 아래와 같이 로컬환경이 변경된 경우에 각 노드별로 판단이 가능합니다.
1. 서버에 없고 로컬에만 있는 소스
-> 새로운 소스를 추가하시면, ? 모양으로 노드가 표시됩니다. 이것은 로컬에만 존재하는 소스로서 add된 소스입니다.
역시 작업후에 commit 을 수행하시면 서버에 새로운 소스로서 반영되게 됩니다.
-> 기타 ">"로 열려있는 파일은 서버와 내용이 다른경우입니다.
서버와 싱크되있으나, 로컬에서 내용을 수정한경우죠.
작업후, commit 하시면 전부 서버에 반영되고, 해당 아이콘들은 임의 버젼과 정상노드로 변경됩니다.
# 각노드에 대한 설정변경방법
window -> Preference -> Team 에 가보시면, CVS 관련 및 자체 협업 에 대한 각종 설정사항이 있습니다.
아래와 같이 CVS -> LabelDecoration 에서 각노드별 아이콘표시사항등을 변경하실 수 있습니다.
자세한 내용은 게시판에서 CVS로 검색하시거나, 관련 reference들을 참조하시기 바랍니다.
여기까지 CVS 사용에 대한 간단한 정보였습니다.