반응형

1. 왜 GIT을 써야하는가

2. GIT의 구조 및 명령어

3. GIT 사용의 예시

4. GIT 실습

 

 

2. GIT의 구조 및 명령어

GIT은 앞서 말한것 처럼 여러 단계에 거쳐 다른 개발자들과 공유한다고 했다.

각 단계별 영역과 상태 등의 구조를 익혀두고 실습을 해보고 다시 이 구조를 본다면 훨씬 이해하기 쉬울것이다.

 

GIT 구조

위의 구조는 영역과 상태, 명령어로 되어있는 모식도이다. 하나하나 설명해보겠다.

 

 

영역
ⓐ Local : 개발자 PC의 영역이다. Local안에서도 여러 가지 영역들이 존재한다. 
ⓑ Working Directory : 실제 개발 하는 파일들이 있는 영역이다.  (Working Tree, Working Copy라고도 부름) 
ⓒ Staging Area : 버전을 만들 파일들을 모아두는 영역이다. working directory에서 여러 파일을 수정했지만, 특정 파일을 현재 버전에 포함하지 않아도 되면 그 파일을 Staging Area에 올리지 않고(제외하고) 버전을 만들수 있다. 즉, 버전을 만들 파일을 선별적으로 묶어 두기 위한 영역이다.(Index, Cache라고도 부름)
ⓓ .git Directory : 버전이 만들어져 관리되는 영역이다. Staging Area에서 묶어둔 파일을 실제로 버저닝이 되어 관리되는 영역이다. (Repository, History, Tree라고도 부름)
ⓔ Remote : 개발자들이 함께 공유하는 서버 영역이며, 원격저장소라 불리운다
ⓕ .git Directory : Remote 서버에서 버전을 관리하는 영역이다.

 

상태

① Untracked : git에서 추적하고 있지 않은 새로운 파일이 생성된 상태이다.

② Tracked : git에서 추적하고 있는 기존에 파일의 상태이며 하위로 2가지 상태를 가진다.

③ Unmodified : git에서 추적하고 있는 기존에 파일을 수정하지 않은 상태이다.

④ Modified : git에서 추적하고 있는 기존에 파일을 수정한 상태이다.

⑤ Staged : 버전을 만들 Stage Area에 파일이 있는 상태이다.

⑥ Version : 버전을 만든 후 .git Directory에 파일이 있는 상태이나, 버전이 만들어진 후 파일은 Tracked > Unmodified 상태로 바뀐다.

 

명령어

git add : 신규 생성된 파일이나, 기존에 git에서 관리하던 파일 중 수정한 파일을 Stage Area에 올릴 경우 사용하는 명령어이다. (Untracked 상태 → Staged 상태 , Modified 상태 → Staged 상태로 바꿈)

git commit : 버전을 관리할 Stage Area에 모인 파일들을 버저닝하는 명령어 이다. (Staged 상태 → Unmodified 상태로 바꿈)

git push : 버저닝한 파일들을 원격 저장소에 업로드하는 명령어이다.

git pull : 버저닝한 파일들을 원격저장소에서 다운로드 하는 명령어이다. 이렇게 다운로드 된 파일은 Tracked > Unmodified 상태로 다운로드 된다.

 

 

 

반응형

+ Recent posts