1. 공유 폴더 방식
- 버전 관리 자료가 로컬 컴퓨터의 공유 폴더에 저장되어 관리되는 방식
- 약속된 공유 폴더에 매일 복사
- 로컬로 복사 후 컴파일하여 이상유무 확인
- 파일 오류 확인되면, 등록한 개발자에게 수정 의뢰
- 파일의 변경 사항을 DB에 기록하여 관리
- SCCS, RCS, PVCS, QVCS
- RCS (Revision Control System) : 소스 파일 동시 수정 방지, 다른 방향으로 진행된 개발 결과를 합치거나 변경 내용 추적 가능
2. 클라이언트/서버 방식
- 서버에 저장되어 관리되는 방식
- 로컬로 복사하여 작업한 후 변경된 내용을 서버에 반영
- 모든 버전관리는 서버에서 수행
- 하나의 파일을 서로 다른 개발자가 작업할 경우 경고 메시지 출력
- 서버 문제시, 복수되지 전까지 협업 및 버전관리 작업은 중단
- CVS, SVN, CVSNT, Clear Case, CMVS, Perforce
3. 분산 저장소 방식
- 하나의 원격 저장소와 분산된 개발자 PC로 로컬 저장소에 함께 저장되어 관리되는 방식
- 원격 저장소의 자료를 로컬로 복사하여 작업한 후 변경된 내용을 로컬 저장소에서 우선 반영(버전관리)한 다음 이를 원격 저장소에 반영
- 원격 저장소에 문제가 생겨도 로컬 저장소의 자료를 이용하여 작업 가능
- Git, GNU arch, DCVS, Bazaar, Mercurial, TeamWare, Bitkeeper, Plastic SCM
4. Subversion(SVN)
- CVS를 개선한 것 / 아파치에서 발표
- 모든 개발 작업은 trunk디렉토리에서 수행되며 추가작업은 branches 디렉토리 안에 별도의 디렉토리를 만들어 작업 후 trunk 디렉토리와 병합(merge)
- 커밋(Commit)할 때마자 리비전(Revision)이 1씩 증가
- 클라이언트 : 운영체제 / 서버 : UNIX
- 무료 사용 가능
- CVS 단점이었던 파일, 디렉토리 이름변경, 이동 등 가능
- add, commit, update, checkout, lock/unlock, import, export, info, diff, merge
> import로 서버에 등록(최초 1회) → checkout → 작업 → add → update → commit
5. Git(깃)
- 로컬 저장소, 원격 저장소가 존재
- 로컬 저장소 : 개발자들이 실제 개발을 진행하는 장소 / 버전관리 수행
- 원격 저장소 : 여러 사람들이 협업을 위해 버전을 공동 관리하는 곳 / 버전관리 내역을 반영하거나 다른 개발자의 변경 내용을 가져올 때 사용
- 버전관리가 신속하게 처리됨
- 원격 저장소나 네트워크에 문제 있어도 작업 가능
- 브랜치이용해 다양한 형태의 기능 테스팅 가능
- 파일의 변화를 스냅샷으로 저장
- 이전 스냅샷의 포인터를 가지고 있으므로 버전의 흐름 파악 가능
- add, commit, branch, checkout, merge, init, remote add, push, fetch
> init으로 지역 저장소 만듦 → remote add 원격 저장소 연결 → add → all → commit → push
> 버전관리 : fetch → 작업 → add → commit → push
📖 Reference
728x90
반응형
'Certificate > 정보처리기사' 카테고리의 다른 글
[2과목 소프트웨어 개발] 애플리케이션 테스트 관리 - 054. ⭐ 애플리케이션 테스트 (0) | 2024.07.02 |
---|---|
[2과목 소프트웨어 개발] 제품 소프트웨어 패키징 - 053. 빌드 자동화 도구 (0) | 2024.07.01 |
[2과목 소프트웨어 개발] 제품 소프트웨어 패키징 - 051. 소프트웨어 버전 등록 (0) | 2024.07.01 |
[2과목 소프트웨어 개발] 제품 소프트웨어 패키징 - 050. 소프트웨어 사용자 매뉴얼 작성 (0) | 2024.07.01 |
[2과목 소프트웨어 개발] 제품 소프트웨어 패키징 - 049. 소프트웨어 설치 매뉴얼 작성 (0) | 2024.07.01 |