본문 바로가기
개발/Git

[Git] 기본 용어 정리 / Git 초보가 꼭 알아야 하는 Git 용어

by Allonsy 2022. 5. 16.
반응형

[기본]

# 로컬 저장소(local repository)

내 PC에서 관리하는 git 저장소

로컬 git 저장소를 만들어주려는 디렉토리로 이동해서 아래 명령어를 실행하면 .git 폴더 생성

$ git init

.git 폴더에 커밋, 스테이지 등 저장소에 필요한 뼈대 파일이 저장되어 있음

 

# 원격 저장소(remote repository)

로컬 저장소를 업로드 하는 곳. ex) GitHub, Bitbucket, GitLab 등

clone 명령어로 기존 원격 저장소를 로컬에 받을 수 있음

$ git clone https://git저장소 주소

 

# 작업 폴더(Working Directory)

작업이 일어나는 폴더 

 

# Staging Area(Index)

작업 폴더에서 작업한 변경 내용을 기록 하는 곳(git 저장소에 commit하기 전에 올려두는 공간)

stage에서 commit을 하게 되면 git 저장소로 변경 내용이 저장됨

 

[git 명령어]

# status

파일의 상태를 확인하는 명령어

커밋된 파일 & 스테이지에 있는 파일 : tracked

그 외 : untracked

$ git status

# add

작업 폴더에서 작업한 변경을 stage에 올릴 때 사용하는 명령어

add한 파일이 tracked 상태가 됨(git이 관리하는 대상이 됨)

파일을 지정해서 올릴 수도 있고, 경로를 지정해서 변경된 모든 파일을 올릴 수도 있음

$ git add 파일1, 파일2
$ git add .
# commit

git add 명령어로 스테이지에 추가한 수정 파일을 git 저장소에 저장

주의! 스테이지에 올려놓지 않은(untracked) 파일은 커밋되지 않음

$ git commit -m "커밋 메시지"

# push

commit한 파일을 원격 저장소에 올리는 명령어

git push <원격 저장소 이름> <브랜치 이름>

$ git push origin master

# fetch

로컬에는 없지만 원격 저장소에 올라가 있는 데이터를 모두 가져옴(업데이트라고 보면 됨)

자동으로 merge 작업을 하지는 않음

git fetch <원격 저장소 이름>

$ git fetch origin

# pull

원격 저장소의 데이터를 가져오고, 자동으로 현재 작업하는 로컬 브랜치와 merge

fetch + merge

pull을 수시로!

push 하기 전에 pull을 하지 않으면 이미 원격저장소에 변경사항이 일어났을 때 push에 실패함, 수시로 원격저장소에 있는 변경사항을 pull 받는 것이 충돌 예방에 최선임!

$ git pull origin master
 
# merge

브랜치 병합

현재 작업 중인 브랜치에 합칠 커밋을 지정해서 병합

<commit> 위치에는 주로 병합할 branch 이름을 넣고, 커밋 체크섬을 넣어도 됨(숫자랑 영어로 조합된 40글자 SHA-1 해시 값, 커밋 고유 번호)

$ git merge <commit>

 

# checkout

브랜치 전환

예를 들어 현재 feature 브랜치에서 작업을 하다가 develop 브랜치로 전환을 하려면 아래와 같이 명령어를 실행하면 됨

$ git checkout develop

 

 

반응형

댓글