버전 관리 시스템(VCS - Version Control System) = 파일 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전 을 다시 꺼내올 수 있는 시스템.
VCS를 사용하면 각 파일 혹은 프로그램 전체를 이전 상태로 되돌릴 수 있고, 시간에 따라 수정 내용을 비교해 볼 수 있고, 누가 문제를 일으켰는지도 추적할 수 있고, 파일을 잃어버리거나 잘못 고쳤을 때도 쉽게 복구할 수 있다.
버전 관리 시스템으로는 로컬 버전 관리 시스템, 중앙집중식 버전 관리 시스템(CVCS), 분산 버전 관리 시스템이 있다. 하나씩 살펴볼 것이다
로컬 버전 관리
로컬 버전 관리 환경에서는 간단한 데이터베이스를 사용해서 파일의 변경 정보를 관리한다.
중앙집중식 버전 관리(CVCS)
CVCS(중앙집중식 VCS)는 파일을 관리하는 서버가 별도로 있고 클라이언트가 중앙 서버에서 파일을 받아서 사용 (Checkout)한다.
다른 개발자와 함께 작업해야 할 때 생기는 문제를 해결하기 위해 개발되었다.
CVCS를 사용하면 모두 누가 무엇을 하고 있는지 알 수 있고, 관리자는 누가 무엇을 할지 꼼꼼하게 관리할 수 있다.
그러나 CVCS 환경은 중앙 서버에 문제가 발생하면 문제가 생긴 동안 협업을 할 수 없고, 사람들이 하는 일을 백업할 방법이 없으며, 중앙 데이터베이스가 있는 하드디스크에 문제가 생기면 프로젝트의 모든 히스토리를 잃는다. (물론 사람마다 하나씩 가진 스냅샷은 괜찮다.)
예시로는 CVS, Subversion, Perforce,Bazaar가 있다.
'👩💻 Programming > GitOps' 카테고리의 다른 글
[GIT] Github에 파일 업로드하기 (0) | 2022.06.26 |
---|---|
[GIT] Github Repository 완전 복제 (0) | 2021.06.09 |
[GIT] git Add, Commit, Push 취소하기 (0) | 2021.04.02 |
[GITHUB] GitHub Profile 꾸미기 (0) | 2021.04.02 |