Jay's Developer Note

[Git] Git 용어 정리 - 1(기본 구조) 본문

VCS/Git

[Git] Git 용어 정리 - 1(기본 구조)

Jay(J) 2022. 1. 30. 00:21
728x90

Git 용어 정리 - 1(기본 구조)

Git 은 SVN 과는 다르게 계층들도 다소 복잡(?)하고 그만큼 용어들이 더 많기 때문에 시리즈를 나눠서 작성해보려한다.

 

먼저 Git 의 구조부터 살펴보도록 하자.

수제작한 Git Structure

오각형으로 된 화살표 안에 있는 단어들은 명령어이다.

각각을 살펴보도록 하겠다.

 

영역
Working Directory : 작업 폴더

 - 실제 작업하는 공간이다.

 

Staging Area : 스테이징, 스태시

 - Working Directory 에서 작업한 파일들을 임시로 올리는 공간이다.

 

Local Repository : 로컬 저장소

 - 내 PC 내에서 동작하는 저장소를 의미한다. Push 하기 전까지는 원격 저장소에 반영되지 않기 때문에 원격 저장소에 Dependency 없이 오프라인으로도 작업할 수 있다.

 

Remote Repository : 원격 저장소

 - 여타 VCS 와 동일하다. 서버에 있는 원격 저장소를 뜻한다.

 

명령어

명령어라고는 하지만 GUI 환경에서는 Back 단에서 선택한 항목에 따라 자동으로 git XXX 로 처리를 해준다.

CLI 환경에서는 git 을 설치하고 git XXX 를 적어서 사용하면 된다.

Add : 추가

 - 수정된 파일들을 Staging 영역으로 보낸다.

 

Commit : 커밋

 - Add 된 파일들을 Local Repository 에 저장한다.

 

Push : 푸시

 - Remote Repository 로 변경된 내용들을 전달한다.

 

Clone : 클론

 - Remote Repository 의 특정 브랜치를 Local 로 복사한다.

 

※ Fork : 포크

 - Clone 과 비슷하게 저장소를 복사하지만 Fork 는 Remote 에서 Remote 로의 복사 개념이다.

 

Pull : 풀

 - Fetch 와 Merge 가 한 번에 수행된다.

 

Fetch : 페치

 - Remote Repository 의 내용을 가져와서 Update 한다. Merge 하기 전까지는 Working Directory 에 반영되지 않는다.

 

Merge : 머지

 - Local Repository 에서 갱신된 내용을 가져와서 반영한다. 이 때는 SVN 과 동일하게 컨플릭트가 발생할 수 있다.

 

다음 게시글에서는 branch 에 대해서 알아보도록 하겠다.

728x90