내가 한 노력들

[ Git ] 기본적인 동작원리(working Dir / Staging Area / Local repo / remote repo) 본문

IT 공부/git

[ Git ] 기본적인 동작원리(working Dir / Staging Area / Local repo / remote repo)

JONGI-N CHOI 2022. 1. 17. 16:31

 

Git 프로젝트는 영역이 존재하는데,  working dir, staging area, Local repo, Remote repo로 크게 네가지 영역으로 구분할 수 있습니다. 

 

Working directory

개발하는 위치를 의미합니다. 

어떤 프로젝트를 진행할 때, 그 프로젝트가 위치하고 있는 공간이 Working directory 입니다. 

 

Stagin Area

커밋(Commit)을 수행할 대상 파일들이 위치하는 영역입니다. 

Working directory에 존재하는 파일을 git add (파일명)을 통해서 Stagin Area 영역으로 위치시킵니다. 

 

Local Repository

로컬위치에 존재하는 Git directory(.git 폴더)로 프로젝트의 메타 데이터나, 커밋등의 정보가 저장되는 영역 

 

Remote Repository

실제 Github에 존재하는 Repository를 가르킵니다. 


 

참고 https://slideplayer.com/slide/11721554/

위의 사진처럼 각 영역의 관계와 다른 영역으로 파일을 위치시키기 위한 명령어를 나타낸 것입니다.

 

Working Dir에서 Staging Area로 파일을 이동시키기 위해서는 git add (파일명) 명령어를 

Staging Area에서 Local Repo로 이동시키기 위해서는 git commit을 사용해야 합니다.

 

협업하는 경우에는 다른 유저가 변경한 파일을 가져오기위해서 git fetch로 우선 Local Repo와 Remote repo를 동기화한 뒤에 git merge를 통해서 Working Dir를 동기화하는 과정이 필요한데 보통은 git pull을 많이 이용한다. 

즉, git pull = git fetch + git merge