728x90
Git의 구조
@2024.03.14
개발을 하다 보면 git를 공부하는 것은 필수이다.
대학교에 전공 수업도 git을 배우는 수업이 열리는 경우도 많았다.
이번엔 Git에 대해서 자세히 알아보자.
Git이란 대체 무엇일까?
💡
“ 가장 인기 있는 버전 관리 도구 “
리누스 토르발스가 개발하였으며 소스 이력 추적을 위한 버전 관리 시스템이다..
리누스 토르발스가 개발하였으며 소스 이력 추적을 위한 버전 관리 시스템이다..

구조
💡
Woking Directory(작업 디렉터리)
: 개발자가 작성한 코드는 작업 디렉터리에 저장된다. 즉
현재 작업 중인 프로젝트가 위치한 디렉터리
💡
Staging Area(스테이징 영역/인덱스)
: 커밋을 준비하는 중간 단계로 사용자가 git 저장소에 파일의 변경사항을 최종적으로 커밋 하기 전에, 변경사항을 모아 놓는 임시 저장 공간이다. 즉
commit할 파일의 예비 저장소
- 변경사항 스테이징 하기(
$git add 파일명
)- 작업 디렉터리의 변경사항을 스테이징 영역에 추가
- 스테이징 된 변경사항 확인하기(
$git status
)- 현재 스테이징 영역에 있는 변경사항과 작업 디렉터리의 변경사항을 비교하여 볼 수 있다.
- 변경사항 커밋 하기(
$git commit
)- 스테이징 영역에 있는 변경 사항을 저장소의 히스토리에 기록한다.
- 커밋 메시지와 함께 지정하여 변경사항에 대한 설명을 추가할 수 있다.
💡
Local Repository(로컬 저장소)
: 각 컴퓨터의 git이 관리하는 로컬 저장소- 커밋 :변경사항을 로컬 저장소에 저장하는 과정
- 스테이징 영역에 추가된 파일들은 개발자가 로컬 저장소에 커밋(commit) 한다. 이를 통해 개발자는 변경 이력을 관리하고, 여러 번의 작업을 분리하여 추적할 수 있다.
💡
Remote Repository(원격 저장소)
: github 등 외부에 위치한 원격 저장소- 로컬 저장소에 commit 한 변경 사항은 깃허브와 같은 원격 저장소로 push 된다.
결론
: 개발자가 작업을 시작하면 파일은 ‘작업 디렉터리’에 있고, 변경 사항이 ‘스테이징 영역’으로 이동한 후에 커밋 되어 ‘로컬 저장소’에 저장된다. 이후 변경 사항은 ‘원격 저장소’에 푸시 되어 다른 개발자와 공유된다.
728x90