개발노트/Git

(Git) Git의 메커니즘(2019/9/5)

superpil 2019. 9. 5. 15:54

-Git의 메커니즘

 

 

git의 구성

-working directory

1. 개념

개인 컴퓨터에서 작업한 파일 또는 폴더를 말한다. 나중에 git에 저장시키고 싶은 파일 또는 폴더 이기도 하다.

 

2. 관련 명령어

2-1.git init

  작업 폴더에 git폴더를 생성한다.

 

-staging area(index)

1. 개념

저장소에 저장하기 전 staging area에 임시적으로 먼저 저장한다. 서브 저장소라고 할 수 있다.

진짜 저장소인 repository에 담기 애매하거나 저장 대기시키고 싶은 등등 repository에 저장시키고 싶지 않은 상황에 서브로 저장한다.

 

2. staging area가 필요한 이유

2-1. 일부분만 commit 할 때
2-2. 충돌을 해결할 때
2-3. 커밋 다시 할 때

  "staging area가 필요한 이유" 관련 글

 

3. 관련 명령어

3-1. git add 추가하고 싶은 파일명

  working directory에 있는 추가하고 싶은 파일을 선택적으로 staging area에 저장한다.

3-2. git add.

  git add 뒤에 "."을 찍어 폴더에 있는 파일을 모두 일괄적으로 저장한다. "."을 찍을 때 반드시 띄어서 쓴다.

 

-repository

1. 개념

실질적 저장소를 말한다.

 

2. 종류

2-1. local repository
2-2. remote repository

  staging area에 있는 파일을 개인 컴퓨터에 저장하는 곳을 local repository

  Github, Gitlab 같은 곳에 올려 공유 가능한 저장소를 remote repository

 

3. 관련 명령어

3-1. git commit

  staging area에 저장된 내용을 local repository에 저장시킨다.

3-2. git push

  local repository에 있는 내용을 remote repository에 업로드한다.

 

-committed, Modified, Staged

1. committed

  데이터가 local repository에 저장됨

 

2. modified

  수정한 파일을 아직 local repository에 commit하지 않음

 

3. staged

  현재 수정한 내용을 Commit 할 것이라고 표시한 상태