본문 바로가기
IT/git

git 입문

by 허브큐 2017. 9. 26.
참고  https://git-scm.com/book/ko/v2

    • 세 가지 상태
      • Git은 파일을 Committed, Modified, Staged 이렇게 세 가지 상태로 관리한다. 
        • Committed란 데이터가 로컬 데이터베이스에 안전하게 저장됐다는 것을 의미한다.
        • Modified는 수정한 파일을 아직 로컬 데이터베이스에 커밋하지 않은 것을 말한다. 
        • taged란 현재 수정한 파일을 곧 커밋할 것이라고 표시한 상태를 의미한다.

      • 이 세 가지 상태는 Git 프로젝트의 세 가지 단계와 연결돼 있다. Git 디렉토리, 워킹 트리, Staging Area 이렇게 세 가지 단계를 이해하고 넘어가자.
        • Git 디렉토리는 Git이 프로젝트의 메타데이터와 객체 데이터베이스를 저장하는 곳을 말한다. 이 Git 디렉토리가 Git의 핵심이다. 다른 컴퓨터에 있는 저장소를 Clone 할 때 Git 디렉토리가 만들어진다.
        • 워킹 트리는 프로젝트의 특정 버전을 Checkout 한 것이다. Git 디렉토리는 지금 작업하는 디스크에 있고 그 디렉토리 안에 압축된 데이터베이스에서 파일을 가져와서 워킹 트리를 만든다.
        • Staging Area는 Git 디렉토리에 있다. 단순한 파일이고 곧 커밋할 파일에 대한 정보를 저장한다. 종종 ``Index``라고 불리기도 하지만, Staging Area라는 명칭이 표준이 되어가고 있다.

      • Git으로 하는 일은 기본적으로 아래와 같다.
        • 워킹 트리에서 파일을 수정한다.
        • Staging Area에 파일을 Stage 해서 커밋할 스냅샷을 만든다.
        • Staging Area에 있는 파일들을 커밋해서 Git 디렉토리에 영구적인 스냅샷으로 저장한다.

      • Git 디렉토리에 있는 파일들은 Committed 상태이다. 파일을 수정하고 Staging Area에 추가했다면 Staged이다. 그리고 Checkout 하고 나서 수정했지만, 아직 Staging Area에 추가하지 않았으면 Modified이다. 


댓글