git

git 명령어 요약

Mar 01, 2020

실무에서 자주 쓰는 git 명령어를 정리한 노트. 어떤 명령어든 --help 를 붙이면 상세 설명이 나온다.

상태 확인

스테이징

되돌리기 — reset

reset의 세 가지 옵션:

옵션index(staged)워킹 디렉터리
--soft유지유지
--mixed (기본값)취소유지
--hard취소삭제

--soft는 “커밋만 취소하고 add한 상태로 돌려놓음”, --mixed는 “add도 취소, 파일은 남음”, --hard는 “다 날림”이다.

HEAD 대신 커밋 해시 앞 7자리를 써도 된다:

git reset ca85201

되돌리기 — revert

reset시간을 되돌리는 것, revert특정 커밋을 없던 일로 하는 새 커밋을 만드는 것. 원격에 이미 푸시한 커밋을 되돌려야 할 때는 revert를 써야 한다. reset으로 되돌려서 force-push하면 다른 팀원 히스토리가 꼬인다.

커밋

원격 저장소

브랜치

출근하면 습관적으로 git branchgit pull origin master. 새벽에 누군가 작업했을 수도 있으니까.

머지

masterdevelop 브랜치가 있다고 가정.

rebase

커밋 히스토리를 재정렬해서 선형으로 만드는 명령어. 협업 중에는 주의해서 써야 한다. 공용 브랜치에는 절대 rebase 금지.

stash — 작업 중 임시 저장

다른 브랜치로 잠깐 넘어가야 할 때.

git stash              # 현재 변경사항 임시 저장
git checkout other     # 다른 브랜치로 이동
# ... 작업 후 커밋
git checkout original  # 원래 브랜치로 복귀
git stash pop          # 스태시 꺼내오기 (리스트에서 제거)

설정