Menu
Coddy logo textTech

Git 치트시트

마지막 업데이트

설정 및 구성

커밋이 올바르게 기록되도록 한 번만 하는 설정.

명령어기능
git config --global user.name "Ada"커밋에 쓸 이름 설정
git config --global user.email you@x.com커밋에 쓸 이메일 설정
git config --list현재 모든 설정 표시
git config --global init.defaultBranch main새 저장소의 첫 브랜치 이름을 main으로 지정
git config --global core.editor "code --wait"기본 편집기 설정
git --version설치된 Git 버전 출력

생성 및 복제

새 저장소를 시작하거나 기존 저장소를 복사합니다.

명령어기능
git init현재 폴더에 새 저장소 생성
git clone <url>원격 저장소를 로컬에 복사
git clone <url> mydir지정한 폴더로 복제
git clone --depth 1 <url>얕은 복제 (최신 커밋만)
git clone -b dev <url>복제 후 dev 브랜치 체크아웃

스테이징 및 커밋

변경 사항을 프로젝트 기록에 남깁니다.

명령어기능
git add file.txt파일 하나 스테이징
git add .현재 디렉터리의 모든 변경 사항 스테이징
git add -p선택한 부분을 대화형으로 스테이징
git commit -m "message"스테이징된 변경 사항 커밋
git commit -am "message"추적 중인 파일을 스테이징하고 커밋
git commit --amend마지막 커밋 수정
git rm file.txt파일을 삭제하고 삭제를 스테이징

브랜치

변경 작업을 분리된 공간에서 진행합니다.

명령어기능
git branch로컬 브랜치 목록
git branch feature새 브랜치 생성
git switch feature기존 브랜치로 전환
git switch -c feature생성과 전환을 한 번에
git checkout feature브랜치 전환의 예전 방식
git branch -d feature머지된 브랜치 삭제
git branch -m newname현재 브랜치 이름 변경

머지 및 리베이스

두 브랜치의 작업을 합칩니다.

명령어기능
git merge featurefeature를 현재 브랜치에 머지
git merge --no-ff feature항상 머지 커밋 생성
git rebase main내 커밋을 main 위에 다시 적용
git rebase -i HEAD~3최근 커밋 3개를 대화형으로 수정
git rebase --continue충돌 해결 후 재개
git rebase --abort진행 중인 리베이스 취소
git cherry-pick <hash>커밋 하나를 이 브랜치에 적용

원격 저장소 (push, pull, fetch)

로컬 저장소를 GitHub 같은 원격 저장소와 동기화합니다.

명령어기능
git remote -v설정된 원격 저장소 목록
git remote add origin <url>origin이라는 이름의 원격 저장소 연결
git fetch머지 없이 원격 변경 사항 내려받기
git pull원격 브랜치를 가져와 머지
git push커밋을 원격 저장소에 업로드
git push -u origin main푸시하면서 업스트림 브랜치 설정
git push origin --delete feature원격 브랜치 삭제

확인하기 (status, log, diff)

무엇이 바뀌었고 무슨 일이 일어나는지 봅니다.

명령어기능
git status스테이징됨, 안 됨, 미추적 파일 표시
git log커밋 기록 표시
git log --oneline --graph브랜치 그래프와 함께 압축된 기록
git diff인덱스 대비 스테이징되지 않은 변경 사항
git diff --staged마지막 커밋 대비 스테이징된 변경 사항
git show <hash>커밋 하나의 변경 사항 표시
git blame file.txt각 줄을 마지막으로 바꾼 사람 표시

변경 사항 되돌리기

실수에서 안전하게 복구합니다.

명령어기능
git restore file.txt파일의 스테이징되지 않은 변경 사항 버리기
git restore --staged file.txt파일 언스테이징 (변경은 유지)
git reset --soft HEAD~1마지막 커밋 취소, 변경은 스테이징된 채로 유지
git reset --hard HEAD~1마지막 커밋 취소하고 변경 사항 버리기
git revert <hash>다른 커밋을 되돌리는 새 커밋 생성
git stash변경 사항을 나중을 위해 치워두기
git stash pop가장 최근 stash 다시 적용

자주 쓰는 모든 Git 명령어를 한 페이지에 담았습니다. 이 Git 치트시트는 일상적인 버전 관리를 위한 빠른 참조 자료입니다 - Git 설정, 스테이징과 커밋, 브랜치, 머지와 리베이스, 원격 저장소 동기화, 실수 되돌리기를 다룹니다.

이것들은 Linux, macOS, Windows에서 동일하게 동작하는 표준 Git 명령어입니다. 필요한 것을 복사하거나, 터미널 플레이그라운드에서 바로 실행해 보세요 - 설치할 것 없이 브라우저에서 실제 셸이 동작합니다.

Git 치트시트 자주 묻는 질문

이 Git 치트시트는 무료인가요?
네. 이 Git 치트시트는 완전히 무료이며 회원 가입이 필요 없습니다. 즐겨찾기에 추가해 두고 브랜치, 커밋, 되돌리기 명령어를 찾아봐야 할 때마다 다시 방문하세요.
merge와 rebase의 차이는 무엇인가요?
git merge는 두 브랜치의 기록을 묶는 새 머지 커밋을 만들어 두 브랜치를 합치며, 양쪽의 정확한 기록을 그대로 보존합니다. 반면 git rebase는 내 커밋을 하나씩 다른 브랜치 위에 다시 적용해 머지 커밋 없는 선형 기록을 만듭니다. merge는 안전하고 비파괴적이며, rebase는 더 깔끔한 기록을 만들지만 커밋을 다시 작성하므로, 다른 사람이 이미 받아간 브랜치는 리베이스하지 마세요.
Git에서 커밋을 어떻게 되돌리나요?
푸시했는지 여부에 따라 다릅니다. 로컬 커밋이라면 git reset --soft HEAD~1은 마지막 커밋을 취소하되 변경 사항은 스테이징된 채로 유지하고, git reset --hard HEAD~1은 변경 사항까지 완전히 버립니다. 이미 공유된 커밋이라면 git revert <hash>를 사용해 기록을 다시 쓰지 않고 되돌리는 새 커밋을 만드세요.
Git 명령어를 온라인에서 연습할 수 있나요?
네. 터미널 플레이그라운드를 열어 브라우저의 실제 셸에서 Git 명령어를 실행해 보세요 - 설치할 것이 없습니다. 체계적으로 배우고 싶다면, Coddy의 무료 인터랙티브 Git 강좌가 첫 커밋부터 브랜치, 머지, 원격 저장소까지 단계별로 안내합니다.
이 치트시트는 초보자에게 적합한가요?
네. 설정과 커밋(일상적인 기본)부터 리베이스와 되돌리기까지 순서대로 정리되어 있어, 첫날부터 상단 섹션을 사용하고 점차 고급 워크플로로 넓혀갈 수 있습니다.
Coddy programming languages illustration

Coddy로 Git 배우기

시작하기