관리 메뉴

I LOVE EJ

CVS란 본문

Tool/Eclipse

CVS란

BeOne 2007. 10. 15. 16:14

이클립스는 팀을 구성해서 다수의 인원으로 소프트웨어를 개발하는 것을 전제로 만들어진 IDE이다.

이클립스는 팀 개발에 이용되는 기존의기술을 모두 갖추고 있기 때문데 기본적이 조작 방법은 대부분 이클립스 인터페이스를 사용하면 그 외에 다양한 팀 개발 기슬을 이용할 수 있다


 이클립스가 갖추고 있는 팀 개발을 취한 툴로는 다음과 같은 것들이 있다.

-버전 관리 툴인 CVS 클라이언트

-API래퍼런스 작성 툴인 Javadoc

-빌드툴인 Ant

-종합테스트 툴인 JUnit

가 있다.


#1.CVS란?

CVS는 Concurrent Versioning System의 약자로 소스 코드의 버전 관리 툴이다. 팀 단위로 소프트웨어 개발하기 위해서는 소스 코드를 공유할 필요가 있다. 이를 위한 가장 간단한 방법은 소스 코드의 공유 폴더를 만들고 소그 파일을 넣어둔 다음 그 파일을 복사해서 코드를 추가하거나 수정하고 다시 공유 폴도를 덮어 씌우는 방법이다



#2. CVS 의 이용


원래 CVS는 UNIX툴이었기 때문에 서버/클라이언트 방식의 소프트웨어가 아니었지만 지금은 서버와 클라이언트 방식의 서비스로 분리해서 사용하는 것이 일반적이다. 또한 이클립스처럼 CVS 클라이언트 기능이 들어 있는 툴을 사용하려면 그 서비스를 제공하는 서버가 필요하다. CVS를 이용하기 위해서는 다름과 같은 절차가 필요해진다.


- CVS서버를 구축한다.

- CVS 클라이언트에서 CVS서버를 액세스한다.

크게 윈도우에서 동작하는 CVSNT로 공부를 할 것이다. 원래 CVS는 유닉스 계열에서 사용하는 프로그램이라 리눅스에서 사용하면 금상첨화라고 생각이 들지만 현 여건상 윈도우에서 사용하기로 하자


# CVS를 사용하여 프로젝트를 공유한다.


-이클립스에서 CVS 서버에 접속해 프로젝트를 공유(임포트)하는 방법과 프로젝트를 CVS서버에서 체크 아웃하는 방법을 알아보자. 여기서는 다음과 같은 작업을 수행한다.

@ 저장소 위치 -> 이클립스에서 CVS 서버에 접속하기 위한 설정을 한다. 이 절차는 각 팀원이 프로젝트에 참가했을 때 처음 한 번만 수행하는 작업이다.

@프로젝트 공유(임포트) -> 프로젝트 CVS서버에 등록한다. 이 절차는 프로젝트에서 누군가(관리자)가 한 번만 수행하는 작업이다.

@프로젝트 체크 아웃 -> 등록 완료된 프로젝트를 CVS서버에서 받아들인다. 이 절차는 각 팀원이 프로젝트에 참가했을 때 처음 한 번만 수행하는 작업이다.



<CVS기초 용어>


-브렌치 (branch)

개발이 갈라져 나간 가지 현재 소스를 1.0아라고 했을 때 다음의 2.0 개발용 브렌치와 버그 수정을 위한 1.0 브렌치로 갈라져서 개발하는 것이 가능하다.


-체크아웃(checkout)

서버에 있는 소스를 로컬에 복사하는 것


-확약(commit)

수정 또는 추가한 소스를 서버에 전송하는 것


-충돌(conflict)

서버와 로컬의 같은 소스가 수정되어 있는 자동 수정이 불가능한 상태 충돌이 발생한 파일은 수동으로 합병한다.


-임포트(import)

서버에 소스(프로젝트)를 보관하는 것


-합병(merge)

서버에 있는 소스와 로컬의 소스를 결합하는 것 같은 소스의 변경이 동시에 이루어진 경우에도 다른 부준의 변경이라면 자동으로 합병이 가능하다.


-저장소(repository)

서버에서 CVS 정보를 보관하는 장소


-태그(tag)

어떤 시점에서의 소스의 집합(전체와 부분)에 붙이는 이름 특정 태그가 붙어 있는 소스만 받아들이는 조작이 가능함


CVS작업 사이클 및 용어설명(추가)

-CVS작업 사이클


*프로젝트 생성 단계

프로젝트를 생성하고 CVS서버에 모듈을 import 한다.

*프로젝트 진행 단계

프로젝트 팀에 속한 모든 개발자는 import 된 프로젝트 모듈을 다운로드한다. 그리고 다운 로드한 모듈의 소스를 변경, 추가, 삭제하는 등 프로젝트를 진행한다.

'Tool > Eclipse' 카테고리의 다른 글

CVS설정  (0) 2007.10.15
cvs 팀 프로젝트  (0) 2007.10.15
CVS란?  (0) 2007.10.15
Ant란?  (0) 2007.10.15
이클립스 실행 빨리 하기  (0) 2007.08.10