Wanna be Brilliant Full-Stack Developer

버전관리 시스템이란? 본문

Some Memos/Git

버전관리 시스템이란?

Flashpacker 2022. 2. 9. 16:10

VCS (Version Control System) 버전관리시스템 ( 협업 불가능) 

 

 

 

CVCS(Centralized Version Control System) 중앙 집중형 버전관리 시스템 ( 협업 가능) 

단점은 B라는애가 중앙에 덮어씌웠다가 A가 그것을 모르고 다시덮어 씌워버리면 A와 중앙이 같아지고 B가 중앙을 내려받으면 백업을 안해놨으니 수정된 데이터는 다 날라간다.

협업할떄 신중하게 해야한다.

 

또한 중앙집중형이기때문에 가운데 컴퓨터가 문제가 생기면 아무것도 할수 없다. 

끝점만 변경 기록 한다는것은 무슨뜻이나면 중앙 저장소에는 내부 DB가 있기떄문에 변경기록(History)가 있지만 A와 B컴퓨터에는 없다. 

 

가운데 내부저장소는 GITHUB

그래서 나온것이 DVCS(Distributed Version Control Systems) 분산버전관리 시스템 대표적인것은 (GIT) 

중앙저장소에 올리기전부터 자신이 가지고 있는 파일이 V1(Version 1)으로 기록하고 있다.

GITHUB에 올려도 V1함꼐 올라가고 B에 가도 그 V1에 그대로 올라가져 있다.

A에서 다시 추가하는것들은 그전 파일에 덮어씌우는 것이 아니라 V2로 로컬에서 관리 해주고 

GITHUB에 다시 올가가고 또다른 파일이 올라가고  그전 파일은 사라지지만  그 파일에 V2를 기록하고 있다.

B가 다시 받으면 V2를 그대로 가져오면서 전에 수정하였던 V1까지 통쨰로 관리할수 있게 되어진다. 


즉 분산 관리 시스템은 로컬과 히스토리를 다가지고 있다는것이다.

인터넷이 안되더라도 내안의 컴퓨터 내부 로컬에서 관리하다가 필요할때 업로드할 수 있다는것이다.

'Some Memos > Git' 카테고리의 다른 글

GIt & GItHub GIT Reset soft, mixed, hard  (0) 2022.02.18