Git 교과서

코드 이력, 하나도 놓치지 마라!

버전 관리 시스템의 이해와 설치부터 커밋, 브랜치, 임시 처리, 병합, 복귀, 서브모듈, 태그까지
깃, 소스트리, 깃허브로 실습하며 기본기를 탄탄하게 다진다!

Yes24 교보문고 알라딘 인터파크 길벗

깃 개념 잡기


이 장에서는 깃의 저장소 개념을 알아보고, 직접 저장소를 생성해 봅니다.
개발 현장에서 을 효과적으로 잘 사용하기 위해서는, 깃 저장소의 동작 원리를 이해하고 사용하는 것이 중요합니다. 마음이 급한 개발자에게는 본 내용이 다소 지루할 지 몰라도, 천리길도 한걸음인 것 처럼 먼저 기초를 닦고 시작해 보는 것으로 하겠습니다.


깃 저장소


은 폴더안에 존재하는 모든 소스코드의 이력을 저장소(repository)라는 특별한 영역에 기록합니다. 저장소를 다른말로 리포지터리라고 표현하기도 합니다.

일반 폴더와 깃의 저장소가 어떠한 차이점이 있고, 어떻게 만들어 지는지에 대해서 알아봅니다. 학습하기


워킹 디렉터리


깃은 안정적인 코드의 수정작업과 기록을 위한 상태를 분리 관리 하기 위해서 워킹 디렉터리라는 개념을 도입하여 사용하고 있습니다. 워킹 디렉터리의 의미와 이곳에서 어떠한 작업들이 이루어 지는지에 대해서 알아보도록 하겠습니다.


스테이지


스테이지는 깃이 파일의 이력을 관리할 수 있는 목록을 가지며, 최종 이력을 기록하는 커밋준비단계를 가지는 영역입니다. 워킹 디렉터리와 저장소간의 중간단계인 스테이지 영역에 대해서 알아 보도록 하겠습니다.


파일의 상태 확인


깃은 작업하는 파일을 워킹 디렉터리와 스테이지 영역 사이를 오고가면서 이력을 추적 관리 합니다. 또한 최종적으로 깃 저장소에 기록을 하기 위해서는 기록하고자 하는 파일들이 스테이지 영역에 존재해야 합니다.

이때, 깃의 파일들이 스테이지 영역에 있는지 워킹 디렉터리안에 있는지 수시로 확인을 해주어야 합니다. 이때 이를 확인할 수 있는 명령이 status 입니다.


파일 관리 목록에서 제외: .gitignore


깃은 워킹디렉터리 안에 있는 모든 파일을 추적 관리 합니다.
추적 가능한 파일들의 목록을 별도의 설정을 통하여 관리를 배제할 수 있습니다.


깃 저장소 복제


깃의 저장소를 생성하는 방법은 크게 2가지 입니다. init명령을 통하여 새로운 깃 저장소를 생성하는 방법과 기존에 생성된 저장소를 복제하여 생성하는 방법입니다.