git 기본용어

김창현·2023년 3월 24일
0

[기본]

로컬 저장소(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

브랜치 병합

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

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

$ git merge

checkout

브랜치 전환

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

$ git checkout develop

출처 : https://allonsyit.tistory.com/117

profile
클린코드 지향

0개의 댓글