깃 개념 잡기
이 장에서는 깃의 저장소 개념
을 알아보고, 직접 저장소
를 생성해 봅니다.
개발 현장에서 깃
을 효과적으로 잘 사용하기 위해서는, 깃 저장소의 동작 원리
를 이해하고 사용하는 것이 중요합니다.
마음이 급한 개발자에게는 본 내용이 다소 지루할 지 몰라도, 천리길도 한걸음인 것 처럼 먼저 기초를 닦고 시작해 보는 것으로 하겠습니다.
깃
은 폴더안에 존재하는 모든 소스코드의 이력을 저장소(repository)
라는 특별한 영역에 기록합니다.
저장소를 다른말로 리포지터리
라고 표현하기도 합니다.
일반 폴더와 깃의 저장소가 어떠한 차이점이 있고, 어떻게 만들어 지는지에 대해서 알아봅니다. 학습하기
깃은 안정적인 코드의 수정작업과 기록을 위한 상태를 분리 관리 하기 위해서 워킹 디렉터리
라는 개념을 도입하여 사용하고 있습니다.
워킹 디렉터리의 의미와 이곳에서 어떠한 작업들이 이루어 지는지에 대해서 알아보도록 하겠습니다.
스테이지
는 깃이 파일의 이력을 관리
할 수 있는 목록
을 가지며, 최종 이력
을 기록하는 커밋
의 준비단계
를 가지는 영역입니다.
워킹 디렉터리와 저장소간의 중간단계
인 스테이지 영역에 대해서 알아 보도록 하겠습니다.
깃은 작업하는 파일을 워킹 디렉터리와 스테이지 영역 사이를 오고가면서 이력을 추적 관리 합니다. 또한 최종적으로 깃 저장소에 기록을 하기 위해서는 기록하고자 하는 파일들이 스테이지 영역에 존재해야 합니다.
이때, 깃의 파일들이 스테이지 영역에 있는지 워킹 디렉터리안에 있는지 수시로 확인을 해주어야 합니다. 이때 이를 확인할 수 있는 명령이 status
입니다.
깃은 워킹디렉터리 안에 있는 모든 파일을 추적 관리 합니다.
추적 가능한 파일들의 목록을 별도의 설정을 통하여 관리를 배제할 수 있습니다.
깃의 저장소를 생성하는 방법은 크게 2가지 입니다.
init
명령을 통하여 새로운 깃 저장소를 생성하는 방법과 기존에 생성된 저장소를 복제하여 생성하는 방법입니다.
깃교과서
버전 관리 시스템의 이해와 설치부터 커밋, 브랜치, 임시 처리, 병합, 복귀, 서브모듈, 태그까지
깃, 소스트리, 깃허브로 실습하며 기본기를 탄탄하게 다진다!