Git
- 내 로컬 저장소에 소스 코드를 형상 관리하기 위한 툴
🌵offline
Working Directory
- 프로젝트가 생성된 디렉토리에 git으로 버전 관리를 하겠다는 초기화 작업을 해준 것
- 우리가 직접 눈으로 확인할 수 있는 저장공간.(현재 프로젝트가 담긴 디렉토리)
Staging Area
- Working Directory의 파일 중에서 변동사항을 추적하고 로컬환경 내 git 저장소에 반영하기 위한 후보를 선정해야하는데(변동사항을 추적할 후보를 골라내는 것), 후보로 선정된 파일이 staging Area에 할당된다.
Local Repository
- Staging Area에 저장된 추적 대상 파일이 commit이라는 액션을 통해서 Local Repository(로컬 저장소)에 반영이 된다.
- commit당 일종의 스냅샷이 생성되어서, 매 commit마다 개별 변동사항에 대해 이력을 파악하고 이전 버전으로 소스를 되돌릴 수 있다.
Github
- 원격 환경에 소스 코드를 저장할 수 있도록 원격 저장소를 제공하는 서비스
- 구글드라이브와 비슷하다고 생각하면 된다.
🌵online
- 우리가 로컬 저장소에 commit한 내용을 다른 디바이스나 환경에서 활용하기 위해서는 웹상의 공간 어딘가에 저장이 되어 있어야 한다.
- 여기서 github는 로컬 저장소의 내용을 push라는 액션으로 전달받아서 저장하고 있게 된다.
Remote Repository
- 로컬 환경이 아닌 원격지에 위치한 git 저장소
- 구글드라이브에 파일 업로드해서 다른 컴퓨터에서 다운받는것과 같다고 생각하면 된다.