HS_development_log

Git의 이해 및 사용 1 - 버전관리 및 Git의 목표 본문

Git

Git의 이해 및 사용 1 - 버전관리 및 Git의 목표

DevHyeonseong 2020. 1. 14. 13:26
반응형

Git의 근본적이해와 버전관리 및 Git 사용실력 향상을 위한 정리글입니다.


버전관리란?

파일의 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 꺼내올 수 있는 시스템

 

버전관리의 종류

 

1. 로컬 버전 관리

· Patch Set(파일에서 변경되는 부분)을 관리.

· Patch Set을 특별한 형식의 파일로 저장

· 일련의 Patch Set을 적용해서 모든 파일을 특정 시점으로 되돌림

 

2. 중앙집중식 버전 관리(CVCS)

· 파일을 관리하는 서버가 별도로 존재

· 클라이언트가 중앙 서버에서 파일을 받아서 사용

2-1) CVCS의 장점 

· 누가 무엇을 하고 있는지 알수있음

· 관리자는 누가 무엇을 할지 꼼꼼하게 관리가능

· 모든 클라이언트의 로컬 데이터베이스 관리보다 VCS 하나를 관리하는게 쉬움

2-2) CVCS의 단점

· 중앙 서버에 다운시 모든 시스템 마비

· 중앙데이터베이스 하드디스크에 문제가 생기면 프로젝트의 모든 히스토리를 잃음

 

3. 분산 버전 관리 시스템(DVCS)

· 저장소를 히스토리와 더불어 전부 복제함

· 서버에 문제가 생기면 복제물로 다시 작업 가능

· Clone은 모든 데이터를 가진 진정한 백업

3-1) DVCS의 장점

· 대부분의 DVCS 환경에서는 리모트 저장소가 존재 

· 동시에 다양한 그룹과 다양한 방법으로 협업 가능


Git 의 목표

  • 빠른 속도

  • 단순한 구조

  • 비선형적인 개발(수천 개의 동시 다발적인 브렌치)

  • 완벽한 분산

  • Linux 커널 같은 대형 프로젝트에도 유용할 것(속도 및 데이터크기 면)

 

 

 

 

참고사이트 : https://git-scm.com/book/ko/v2/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0-%EC%A7%A7%EA%B2%8C-%EB%B3%B4%EB%8A%94-Git%EC%9D%98-%EC%97%AD%EC%82%AC

반응형

'Git' 카테고리의 다른 글

Git의 이해 및 사용 3 - 브랜치란 무엇인가?  (0) 2020.01.15
Git의 이해 및 사용 2 - Git 기초  (0) 2020.01.14