기초

Git Bash란 무엇이고 Windows에서 어떻게 쓰나요

업데이트: · Skillaria.Top

Git Bash는 Git for Windows와 함께 설치되는 Windows용 터미널로, bash 셸과 ls, cd, cat, grep, ssh 같은 Unix 도구, 그리고 Git 자체를 제공합니다. Windows에서도 Git 명령어와 문서의 안내를 Linux나 macOS와 똑같이 실행할 수 있게 해 줍니다.

Git Bash란 무엇인가

Git Bash는 Git for Windows와 함께 설치되며, bash 셸이 들어 있는 터미널을 여는 Windows 프로그램입니다. 그 안에서 Git 자체와 표준 Unix 도구들이 동작합니다. ls, cd, pwd, cat, grep, find, less, ssh, ssh-keygen, curl 등이 포함됩니다.

기술적으로는 MSYS2 환경을 옮겨 놓은 것입니다. 프로그램은 Windows용으로 컴파일되지만 동작은 Linux와 같습니다. 기본 터미널 창은 MinTTY 에뮬레이터입니다. 가상 머신이나 완전한 Linux는 아니며, 그런 것이 필요하면 WSL을 사용합니다. Git Bash는 가볍고, 즉시 실행되며, Windows 파일을 그대로 다룹니다.

검색창에 "git bush"나 "깃 배시"라고 입력하는 경우도 있는데, 모두 같은 프로그램을 가리킵니다. bash는 Bourne Again SHell의 줄임말이며, 덤불(bush)과는 관계가 없습니다.

cmd와 PowerShell이 있는데 Git Bash가 필요한 이유

Git은 PowerShell이나 일반 명령 프롬프트에서도 잘 동작합니다. 그래도 Git Bash에는 특히 초보자에게 실질적인 장점이 있습니다.

  • 모든 시스템에서 같은 명령어. Git 문서, 포럼 답변, GitHub 안내, 강의가 모두 bash 명령을 씁니다. Git Bash에서는 고치지 않고 그대로 실행됩니다: rm -rf build, cat ~/.ssh/id_ed25519.pub, export VAR=value.
  • SSH 도구가 바로 있음. ssh-keygen, ssh-agent, ssh-add가 이미 설치되어 있어 GitHub용 키를 1분 안에 만들 수 있습니다.
  • 프롬프트에 Git 정보 표시. Git Bash는 입력 줄에 현재 브랜치를 보여 줍니다. 예: (main), 병합 중에는 (main|MERGING).
  • 자동 완성. Tab으로 Git 명령, 브랜치 이름, 파일 이름을 완성할 수 있습니다.
  • 앞으로를 위한 기술. 서버, Docker 컨테이너, CI는 대부분 Linux에서 동작합니다. Git Bash에서 bash에 익숙해지면 서버에서도 편하게 일할 수 있습니다.

Git Bash, Git CMD, PowerShell: 무엇이 다른가

Git for Windows를 설치하면 시작 메뉴에 여러 항목이 생겨서 헷갈리기 쉽습니다.

도구설명언제 쓰나
Git BashUnix 도구와 Git이 들어 있는 bash 셸Git 작업의 기본 도구, 인터넷 안내를 따라 할 때
Git CMDPATH에 Git이 추가된 일반 Windows 명령 프롬프트(cmd.exe)cmd에 익숙하고 git 명령만 필요할 때
Git GUITcl/Tk로 만든 간단한 그래픽 클라이언트커밋을 눈으로 구성할 때. 거의 쓰지 않음
PowerShell / cmdWindows 기본 터미널설치 시 "from the command line and also from 3rd-party software" PATH를 선택했다면 Git이 동작함

Git CMD는 별도의 프로그램이 아니라 Git 환경이 설정된 일반 cmd입니다. 그 안에서도 git 명령은 같지만 ls, cat, grep은 동작하지 않습니다. 대신 dir, type, findstr을 씁니다. "cmd git"을 검색하는 사람들은 보통 일반 명령 프롬프트에서 git을 실행하는 방법을 찾고 있습니다. 답은 간단합니다. Git이 PATH에 있다면 그냥 git status를 실행하면 됩니다.

Git Bash 여는 방법

시작 메뉴에서

"Git Bash"를 검색해 실행하세요. 터미널은 사용자 홈 폴더에서 열리며, 그 경로는 /c/Users/이름이고 bash에서는 ~로 표시됩니다.

원하는 폴더에서 바로 열기

가장 편한 방법입니다. 탐색기에서 프로젝트 폴더 안의 빈 곳을 오른쪽 클릭하고 "Open Git Bash here"를 선택하세요. Windows 11에서는 "추가 옵션 표시"(또는 Shift + 오른쪽 클릭) 안에 있습니다.

VS Code 터미널에서

터미널을 여세요(Ctrl + `). "+" 옆의 화살표를 누르고 Git Bash를 선택합니다. 기본값으로 만들려면 명령 팔레트에서 "Terminal: Select Default Profile"을 실행하고 Git Bash를 고르세요.

Windows Terminal에서

Git for Windows 설치 마법사에서 옵션을 선택하면 Windows Terminal에 Git Bash 프로필이 자동으로 추가됩니다. 프로필이 없다면 명령 C:\Program Files\Git\bin\bash.exe -i -l로 새 프로필을 만드세요.

경로와 파일: Windows와 가장 큰 차이

Git Bash에서는 경로를 Unix 방식으로 씁니다. C: 드라이브는 /c가 되고, 역슬래시는 슬래시로 바뀝니다.

WindowsGit Bash
C:\Users\Anna\projects/c/Users/Anna/projects
D:\work/d/work
%USERPROFILE%~ 또는 $HOME

경로에 공백이 있으면 따옴표로 감싸세요: cd "/c/Users/Anna/My Projects". 현재 폴더를 탐색기에서 열려면 explorer ., VS Code에서 열려면 code .를 실행합니다.

초보자를 위한 Git Bash 기본 명령어

이동과 파일 다루기

pwd                 # 현재 위치
ls -la              # 숨김 파일 포함 목록 (.git, .gitignore)
cd projects/site    # 폴더로 이동
cd ..               # 한 단계 위로
mkdir new-app       # 폴더 만들기
touch index.html    # 빈 파일 만들기
cat README.md       # 내용 보기
rm file.txt         # 파일 삭제
rm -r old-folder    # 폴더와 내용 삭제
clear               # 화면 지우기

Git Bash에서 첫 저장소 만들기

$ mkdir my-first-repo && cd my-first-repo
$ git init
Initialized empty Git repository in C:/Users/Anna/my-first-repo/.git/
$ echo "Git 안녕" > hello.txt
$ git add hello.txt
$ git commit -m "hello.txt 추가"
$ git log --oneline

git init 후에는 프롬프트가 바뀌어 괄호 안에 브랜치 이름이 나타납니다. 저장소 안에 있는지 빠르게 확인하는 방법입니다.

유용한 요령

  • Tab — 명령, 브랜치, 파일 자동 완성. 두 번 누르면 후보가 보입니다.
  • 위쪽 화살표 — 이전 명령; history — 전체 기록; Ctrl + R — 기록 검색.
  • 복사/붙여넣기 — MinTTY에서는 마우스로 드래그하면 바로 복사되고, 붙여넣기는 Shift + Insert 또는 오른쪽 클릭입니다. 터미널에서 Ctrl + C는 복사가 아니라 명령을 중단합니다.
  • q — 페이지 보기 종료(git log, git diff는 less로 열립니다).
  • Esc, 그다음 :q! 와 Enter — 커밋 메시지용으로 열린 Vim 종료.

Git CLI: 명령줄을 배워야 하는 이유

Git CLI는 Git의 명령줄 인터페이스, 즉 git ... 명령들 자체입니다. 그래픽 클라이언트는 히스토리를 보기에 편하지만 한계가 있습니다. 모든 작업을 지원하지 않고, 오류가 났을 때 버튼이 무슨 일이 일어나는지 설명해 주지 않습니다. 명령줄은 완전한 제어와 자세한 메시지를 줍니다.

또 하나의 이유는 면접이나 팀 작업에서 커밋을 어떻게 취소하는지, 충돌을 어떻게 해결하는지 보여 달라고 할 때, 사람마다 쓰는 GUI가 다르다는 점입니다. 명령어는 어디서나 같습니다. 좋은 전략은 명령줄로 작업하고, diff와 히스토리를 볼 때는 GUI나 IDE의 도구를 활용하는 것입니다.

Git Bash 설정하기

~/.bashrc에 별칭 추가

Git Bash는 실행 시 ~/.bash_profile과 ~/.bashrc를 읽습니다. 여기에 줄임말을 추가하세요.

alias gs='git status'
alias gl='git log --oneline --graph --all'
alias ll='ls -la'

재시작 없이 적용하려면 source ~/.bashrc를 실행하세요. .bashrc는 있는데 .bash_profile이 없다는 경고가 뜨면 Git Bash가 .bash_profile을 자동으로 만들어 줍니다. 정상입니다.

Git 자체의 별칭

별칭은 Git 설정에도 저장할 수 있으며, 그러면 어떤 터미널에서든 동작합니다.

git config --global alias.st status
git config --global alias.lg "log --oneline --graph --all"

이제 git st와 git lg는 Git Bash와 PowerShell 모두에서 동작합니다.

외관

글꼴, 크기, 색, 투명도는 창 제목 표시줄을 오른쪽 클릭 → Options에서 설정합니다. 한글을 쓴다면 Text 항목에서 인코딩이 UTF-8로 선택되어 있는지 확인하세요.

Git Bash의 흔한 문제

git log에서 한글이 깨져 보임

대개 Options → Text에서 UTF-8을 선택하고, ~/.bashrc에 export LANG=ko_KR.UTF-8을 추가하면 해결됩니다. 한글 파일 이름이 git status에서 \354\240\225 같은 이스케이프 형태로 보인다면 git config --global core.quotepath false를 실행하세요.

대화형 프로그램이 멈춤

일부 콘솔 프로그램(예: 인수 없이 실행한 Python 인터프리터나 node)은 MinTTY에서 이상하게 동작합니다. winpty로 실행하세요: winpty python. 또는 Windows Terminal 안에서 Git Bash를 사용하세요.

경로가 이상한 것으로 바뀜

MSYS는 Unix 경로처럼 보이는 인수를 Windows 경로로 자동 변환합니다. 예를 들어 docker run에 /app을 넘길 때 문제가 됩니다. 해결 방법은 슬래시를 두 번 쓰거나(//app), 명령에 MSYS_NO_PATHCONV=1을 설정하는 것입니다.

push할 때 "Permission denied (publickey)"

SSH 키가 없거나 GitHub에 등록되지 않은 경우입니다. Git Bash에서 ssh-keygen -t ed25519 -C "you@example.com"으로 키를 만들고, ~/.ssh/id_ed25519.pub의 내용을 GitHub 설정에 추가한 뒤 ssh -T git@github.com으로 확인하세요.

Git Bash와 WSL

WSL은 Windows 안에서 돌아가는 진짜 Linux로, 자체 파일 시스템과 패키지를 가집니다. Linux용으로 개발하거나, Docker를 실행하거나, 서버 환경을 맞춰야 할 때 필요합니다. Git Bash는 더 간단하고 가벼우며, Git 작업에는 이것만으로 충분합니다. 두 가지를 섞지 않는 것이 중요합니다. WSL 안에 클론한 저장소는 WSL의 Git으로 관리하고, C: 드라이브의 저장소는 Git for Windows로 관리하세요.

정리

Git Bash는 Git for Windows와 함께 설치되는, bash와 Unix 도구가 들어 있는 터미널입니다. Windows에서도 Git 문서와 안내를 그대로 따를 수 있게 해 주고, SSH 도구가 준비되어 있으며, 프롬프트에 브랜치를 보여 줍니다. Git CMD는 같은 Git을 일반 명령 프롬프트에서 쓰는 것이고, Unix 명령은 없습니다. 학습과 일상 작업에는 Git Bash를 선택하세요. 강의의 실습 수업에서도 기본 터미널로 사용합니다.

자주 묻는 질문

Git Bash는 무료인가요?

네, Git Bash는 Git for Windows에 포함되어 있으며 오픈 라이선스로 무료로 배포됩니다.

Git과 별도로 Git Bash만 설치할 수 있나요?

아니요, Git Bash는 Git for Windows와 함께만 설치됩니다. Git이 이미 설치되어 있다면 시작 메뉴에 Git Bash가 있습니다.

macOS와 Linux에도 Git Bash가 있나요?

별도의 프로그램은 없고 필요하지도 않습니다. macOS와 Linux의 기본 터미널은 이미 bash나 zsh와 Unix 도구를 사용합니다.

Git Bash는 홈 폴더와 설정 파일을 어디에 저장하나요?

홈 폴더는 C:\Users\이름이며, bash에서는 ~로 접근합니다. .bashrc, .bash_profile, .gitconfig, .ssh 폴더가 모두 그곳에 있습니다.

Git Bash에서 bat 파일과 exe 파일을 실행할 수 있나요?

네, Windows 프로그램은 이름이나 경로로 실행됩니다. 예: ./build.bat 또는 notepad file.txt.

영상으로 이 주제 배우기

이 주제는 “Git 완전 정복: 초보에서 능숙한 개발자로” 강의에서 실습과 함께 자세히 다룹니다.

강의로 이동