본문 바로가기
기타

Git bash 필수 명령어 총정리

by Autosar 2026. 5. 10.
반응형

Git은 단순한 형상관리 툴이 아니다.

실무에서는 코드 이력 관리, 협업, 브랜치 운영, 배포 버전 관리까지 대부분 Git 기반으로 진행된다.

 

이번 글에서는 실무에서 자주 사용하는 Git 명령어들을 기준으로 전체 흐름을 정리해보려고 한다.

 

로컬 상태 확인하기
git status

현재 Git 워킹트리 상태를 확인하는 명령어다.

수정된 파일, 스테이지 상태, Untracked 파일 등을 확인할 수 있다.

git status -s

git status 결과를 짧게 요약해서 보여준다.

git init -b main

현재 폴더에 Git 저장소를 생성하고 기본 브랜치를 main 으로 지정한다.

 

 

Git 옵션 설정

 

Git은 사용자 정보나 기본 설정을 저장할 수 있으며, 설정 범위는 Global / Local / System 으로 나뉜다.

git config --global [옵션명]

전역 옵션 내용을 확인한다.

git config --global [옵션명] [값]

 

전역 옵션 값을 설정한다.

예시:

git config --global user.name "Jong"
git config --global user.email "test@test.com"

 

git config --global --unset [옵션명]

 

전역 옵션을 삭제한다.

git config --local [옵션명]

 

현재 프로젝트(Local)의 옵션 내용을 확인한다.

git config --local [옵션명] [값]

 

현재 프로젝트(Local)의 옵션 값을 설정한다.

git config --local --unset [옵션명]

현재 프로젝트(Local)의 옵션을 삭제한다.

git config --system [옵션명]

 

시스템 전체 옵션을 확인한다.

git config --system [옵션명] [값]

시스템 전체 옵션 값을 설정한다.

git config --system --unset [옵션명]

시스템 옵션을 삭제한다.

git config --list

현재 적용된 모든 Git 설정을 확인한다.

 

 

기본 Git 명령어
git add [파일명]

파일을 스테이지(Stage)에 추가한다.

git commit

스테이지에 올라간 파일들을 커밋한다.

git commit -a

추적 중인 파일을 자동으로 add 후 바로 커밋한다.

단, 신규 파일(Untracked)은 포함되지 않는다.

git push [-u] [원격저장소명] [브랜치명]

현재 브랜치의 커밋을 원격 저장소에 업로드한다.

-u 옵션은 upstream 브랜치를 등록한다.

git pull

원격 저장소 내용을 가져와 현재 브랜치에 병합한다.

즉, fetch + merge 동작이다.

git fetch [원격저장소명] [브랜치명]

원격 저장소 변경 내용을 로컬 저장소로 가져온다.

단, 워킹트리에는 반영되지 않는다.

git merge [대상브랜치]

지정한 브랜치 내용을 현재 브랜치에 병합한다.

git reset [파일명]

스테이지에 올라간 파일을 다시 내린다.

워킹트리 수정 내용은 유지된다.

git log

현재 브랜치의 커밋 이력을 확인한다.

git log --oneline --graph --all --decorate

커밋 로그를 한 줄 요약, 그래프 형태, 참조 정보와 함께 확인한다.

git remote add [원격저장소명] [저장소주소]

원격 저장소를 연결한다.

git remote -v

등록된 원격 저장소 목록을 확인한다.

git clone [저장소주소] [폴더명]

원격 저장소를 복제(Clone)한다.

 

브랜치 명령어
git branch

로컬 브랜치 목록을 확인한다.

git branch -v

브랜치별 마지막 커밋 정보까지 함께 표시한다.

git branch [브랜치명]

새 브랜치를 생성한다.

git branch -f [브랜치명] [커밋해시]

브랜치를 특정 커밋으로 강제 이동한다.

git branch -r

원격 브랜치 목록을 확인한다.

git switch [브랜치명]

브랜치를 변경한다.

git switch -c [브랜치명]

새 브랜치를 생성하고 바로 이동한다.

git switch -c [브랜치명] [커밋해시]

특정 커밋 기준으로 브랜치를 생성 후 이동한다.

git rebase [대상브랜치]

현재 브랜치 커밋들을 대상 브랜치 뒤로 재배치한다.

git branch -d [브랜치명]

병합 완료된 브랜치를 삭제한다.

git branch -D [브랜치명]

브랜치를 강제로 삭제한다.

reset --hard
git reset --hard [커밋해시]

현재 브랜치를 지정한 커밋으로 이동한다.

워킹트리 내용도 함께 변경되므로 주의해야 한다.

 

Tag 명령어

 

git tag -a [태그명] -m [메시지]

Annotated Tag를 생성한다.

git tag -a [태그명] [커밋해시] -m [메시지]

특정 커밋 기준으로 태그를 생성한다.

git push [원격저장소명] [태그명]

태그를 원격 저장소에 업로드한다.

 

반응형