[Git] Git의 동작원리

2021. 7. 13. 01:12공부/Git

반응형

Git 프로젝트의 세 가지 구성요소

  • Working Directory : 작업할 파일이 있는 디렉토리
  • Staging Area : Commit을 수행할 파일들이 올라가는 영역
  • Git Directory : Git 프로젝트의 메타 데이터와 데이터 정보가 저장되는 디렉토리 (.git폴더)

원격지에 있는 저장소(Remote Repository)에서 맨 처음 클론을 받으면 자신의 컴퓨터에 해당 프로젝트가 통째로 다운받아진다.

이후 자신이 수정한 내역을 다시 원격 저장소까지 반영하려면 git add, git commit, git push의 과정을 거쳐야 한다. 

이후 다시 저장소로부터 수정된 내역을 받을 때는 git fetch를 수행한다.

이런 과정 중 내가 수정한 내역이 원격 저장소에 있는 내역과 다를 수 있기 때문에 git merge를 수행해 자신의 컴퓨터에 있는 소스코드를 원격 저장소와 맞춘다.

 

 

git fetch + git merge = git pull

 

저장소(Repository)

저장소(Repo)는 실제 소스코드가 담겨 있으면서 커밋 내역 등의 모든 작업 이력이 담겨 있는 공간을 말한다.

실제 프로젝트의 메타 데이터를 포함해 각종 데이터는 .git폴더에 담긴다.

어떤 파일을 커밋하면 작업들을 분류하기 위해 해시 값을 이용하는데 일반적으로 해시값은 충돌이 발생하지 않기 때문에 정확히 커밋 내용을 관리 가능하다.

반응형