다연이네

Git 본문

카테고리 없음

Git

 다연  2021. 3. 3. 12:24
반응형

버전관리시스템(VCS - Version Control System) 

각 파일을 이전 상태로 되돌릴 수 있고, 프로젝트를 통째로 이전 상태로 되돌릴 수 있고, 시간에 따라 수정 내용을 비교해 볼 수 있고, 누가 문제를 일으켰는지 추적할 수 도 있고, 누가 언제 만들어낸 이슈인지도 알 수 있다.

 

버전 관리 시스템 종류

ㄱ. 로컬 버전 관리 시스템 (요즘 잘 안씀)

      데이터베이스를 사용해서 파일의 변경 정보를 관리

      RCS(Revision Control System) - 회사에서 많이 사용

      날짜별로, 시간별로 DB관리, 일련의 Patch Set을 적용해서 모든 파일을 특정 시점으로 되돌릴 수 있다.

 

ㄴ. 중앙 집중식 버전 관리 시스템(CVCS)

      CVS, [Subversion] == SVN, Perforce 같은 시스템은 파일을 관리하는 서버가 별도로 있고

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

      치명적인 결함 - 가장 대표적 : 중앙 서버에 문제가 발생하면 그동안 작업 불가

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

 

ㄷ. 분산 버전 관리 시스템

     [Git], Mecurial, Bazaar, Darcs 등 

     중앙 집중식의 치명적 결함을 극복 - 저장소를 히스토리와 더불어 전부 복제

     서버에 문제가 생기면 이 복제물로 다시 작업을 시작할 수 있다.

 

 

 

 

 

용어

1) VCS

2) Checkout (중앙 서버에서 파일을 받아 사용)

3) Patch Set (파일에서 변경되는 부분)

4) Clone (복제, 모든 데이터를 가진 진정한 백업)

5) Git 브랜치 (branch 가지)

6) Commit (Staging Area -> 로컬 저장소에 저장)

7) 체크섬 (40/16) SHA-1 해시 기법

8) 세 가지 상태 (깃은 파일을 아래 3가지 상태로 관리)

    ㄱ. Committed 데이터가 로컬 DB에 안전하게 저장된 상태 ( 로컬 저장소에 저장 완료! 원격(서버)저장소X )

    ㄴ. Modified    수정한 파일을 아직 로컬 데이터베이스에 커밋하지 않은 것

    ㄷ. Staged       현재 수정한 파일을 곧 커밋할 것이라고 표시한 상태

9) Git 디렉토리는 Git이 프로젝트의 메타데이터와 객체 데이터베이스를 저장하는 곳을 말한다.

   이 Git 디렉토리가 Git의 핵심이다. 다른 컴퓨터에 있는 저장소를 Clone 할 때 Git 디렉토리가 만들어진다.

10) 워킹 트리는 프로젝트의 특정 버전을 Checkout 한 것이다. Git 디렉토리는 지금 작업하는 디스크에 있고

     그 디렉토리 안에 압축된 데이터베이스에서 파일을 가져와서 워킹 트리를 만든다.

11) Index == Staging Area

12) 

 

깃허브: 포스팅 업체, 서버, 깃과 다름

 

 

 

 

 

반응형
Comments