[Git] git 명령어 정리

Gaanii·2025년 3월 5일

Git

목록 보기
4/4
post-thumbnail

Git 명령어 정리

1️⃣ 기본 명령어

명령설명예시
git init프로젝트 버전 관리시작
git remote -v원격 저장소 URL 확인
git remote add <원격 별칭> <URL>원격 저장소 추가git remote add origin https://github.com/gaeunchoi/Algorithm.git
git clone <URL>원격 저장소 복제git clone https://github.com/gaeunchoi/Algorithm.git
git status현재 브랜치 변경사항 확인
git add <파일명>특정 파일 추적 및 스테이징git add README.md
git add .모든 파일 추적 및 스테이징
git restore --staged <파일>특정 파일 언스테이징(v2.23)git restore --staged README.md
git restore --staged .모든 파일 언스테이징(v2.23)
git commit -m "message"버전 생성

2️⃣ log

log 는 생성한 버전 내용이나 내역, 변경 사항, 작업자 등을 확인

명령설명예시
git log현재 브랜치의 버전 내역을 확인
git log -<숫자>숫자만큼만 최신 버전 내역 확인git log -2
git log --all모든 브랜치 내역 확인
git log --oneline간략한 버전 내역 확인
git log --graph그래프 형태로 버전 내역 확인
git reflog로컬의 모든 버전 관리 내역 확인
git show현재 브랜치의 최신 버전 확인
git show <브랜치>특정 브랜치의 최신 버전 확인git show dev

3️⃣ branch

branch 는 프로젝트에서 여러 작업을 나눠 병렬로 진행할 수 있는, 버전 관리의 각 분기점

명령설명예시
git branch로컬 브랜치 목록 확인
git branch -r원격 브랜치 목록 확인
git branch -a로컬 및 원격 브랜치 목록 확인
git branch <브랜치>브랜치 생성git branch dev
git branch -D <브랜치>브랜치 삭제git branch -D dev
git branch -m <브랜치>현재 브랜치 이름 변경git branch -m main
git branch -m <이전브랜치> <새브랜치>특정 브랜치 이름 변경git branch -m master main
git branch --show-current현재 브랜치 이름 확인 (v2.22)
git checkout <브랜치>브랜치 전환git checkout dev
git checkout -b <브랜치>브랜치 생성 및 전환git checkout -b dev
git checkout <해시>특정 버전 체크아웃git checkout 1a2b3c4d
git switch <브랜치>브랜치 전환 (v2.23)git switch dev
git switch -c <브랜치>브랜치 생성 및 전환 (v2.23)git switch -c dev

4️⃣ push / pull / fetch

push 는 로컬 저장소의 버전 내역을 원격 저장소로 업로드하는 기능

명령설명예시
git push <원격별칭> <브랜치>원격 저장소로 밀어내기git push origin dev
git push <원격별칭> --all원격 저장소로 모든 브랜치 밀어내기git push origin --all
git push <원격별칭> <브랜치> -f원격 저장소로 강제(Force) 밀어내기git push origin dev -f

pull 은 원격 저장소의 버전 내역을 로컬 저장소로 다운로드 하는 기능

명령설명예시
git pull <원격별칭> <브랜치>원격 저장소에서 브랜치 당겨오기git pull origin dev
git pull --rebase <원격별칭> <브랜치>원격 저장소의 브랜치로 로컬 브랜치 덮어쓰기git pull --rebase origin dev

fetch 는 원격 저장소의 최신 내역을 로컬 원격 내역과 동기화하는 기능. 로컬 브랜치에는 영향 x

명령설명예시
git fetch현재 원격 저장소의 브랜치 목록 가져오기
git fetch <원격별칭>특정 원격 저장소의 브랜치 목록 가져오기git fetch origin
git fetch --all모든 원격 저장소의 브랜치 목록 가져오기
git fetch --prune원격 저장소에서 브랜치 목록 가져와서 로컬의 원격 브랜치 목록 덮어쓰기

5️⃣ diff

diff 는 두 개의 버전이나 파일 등의 차이를 서로 비교하는 기능

명령설명예시
git fetch현재 원격 저장소의 브랜치 목록 가져오기
git fetch <원격별칭>특정 원격 저장소의 브랜치 목록 가져오기git fetch origin
git fetch --all모든 원격 저장소의 브랜치 목록 가져오기
git fetch --prune원격 저장소에서 브랜치 목록 가져와서 로컬의 원격 브랜치 목록 덮어쓰기

6️⃣ Rollback

롤백(Rollback) 은 현재 작업중인 변경 사항을 모두 취소하고 버리는 것

명령설명예시
git checkout HEAD -- <파일>특정 파일 롤백git checkout HEAD -- ./src/main.js
git restore <파일>특정 파일 롤백 (v2.23)git restore ./src/main.js
git restore .모든 파일 롤백 (v2.23)
git reset --hard HEAD모든 파일 롤백
git restore --source <커밋아이디> <파일>특정 commit 시점으로 파일 롤백
git restore -staged <파일>실수로 git add 했을 때 해당 파일 staging 취소

7️⃣ reset / revert

초기화(Reset) 는 특정 버전으로 이동하고 그 이후 버전 내역을 제거하는 기능

명령설명예시
git reset --hard HEAD~<번호>번호만큼 이전 버전으로 리셋git reset --hard HEAD~2
git reset --hard HEAD~1직전 버전으로 리셋 (1 버전 전으로)
git reset --hard HEAD~직전 버전으로 리셋 (1 생략)
git reset --hard <해시>특정 버전으로 리셋git reset --hard 1a2b3c4d
git reset --hard HEAD^마지막 버전을 삭제
git reset --hard수정 내용을 버림
git reset --soft수정 내용을 스테이징
git reset --mixed수정 내용을 스테이징하지 않음

되돌리기(Revert) 는 특정 버전을 취소하고 취소한 새로운 버전을 생성하는 기능

명령설명예시
git revert <커밋아이디>commit 취소하기
git revert HEAD방금 생성된 최근 커밋 취소
git revert <해시>특정 버전을 취소하고 새로운 버전 생성git revert 1a2b3c4d

8️⃣ stash

임시 저장(Stash) 는 작업 중인 변경사항을 버전으로 생성하지 않고 별도로 저장하는 기능, 최근 commit과의 차이점을 전부 보관해준다

명령설명예시
git stash list임시 저장된 작업 목록 확인
git stash현재 작업을 임시 저장
git stash -a미추적 파일 포함, 임시 저장
git stash -m '<메시지>'메시지와 함께 현재 작업을 임시 저장
git stash -am '<메시지>'미추적 파일 포함, 메시지와 함께 현재 작업을 임시 저장
git stash show <번호>특정 번호의 임시 저장 내용 보기git stash show 2
git stash apply가장 최신의 임시 저장 내용을 현재 브랜치에 적용
git stash apply <번호>특정 번호의 임시 저장 내용을 현재 브랜치에 적용git stash apply 2
git stash drop가장 최신의 임시 저장 내용 삭제
git stash drop <번호>특정 번호의 임시 저장 내용 삭제git stash drop 2
git stash pop가장 최신의 임시 저장을 적용하고 목록에서 삭제
git stash clean모든 임시 저장 목록 삭제

0개의 댓글