[Git] 간단하게 정리한 명령어 리스트

설치와 설정

git config - 사용자 설정

git help - 도움말 확인

프로젝트 생성 및 가져오기

git init - git 저장소 생성

git clone - git 저장소 생성 및 리모트 저장소에서 데이터 가져오기

스냅샷 다루기

git add - 워킹 디렉토리에서 staging area로 컨텐츠를 추가

git status - 워킹 디렉토리와 staging area의 파일들 상태 확인

git diff - 두 트리 개체의 차이를 확인

git commit - staging area의 파일들을 하나의 스냅샷으로 기록하여 저장

git reset - 이전의 상태로 복구

git rm - 파일의 삭제

git mv - 파일을 옮기거나 이름을 변경

git clean - 워킹 디렉토리에서 필요없는 파일을 삭제

Branch & Merge

git branch - 브랜치의 생성, 삭제, 수정 관리

git chechout - 현재 브랜치에서 다른 브랜치로 이동

git merge - 다른 브랜치를 현재 브랜치에 병합

git log - 프로젝트 히스토리를 시간의 역순으로 보임

git stash - 아직 커밋하지 않은 일을 저장(워킹 디렉토리 저장)

git tag - 히스토리에서 특정 부분을 북마크. 일반적으로 배포시 버전관리에 사용

공유 및 업데이트

git fetch - 로컬 데이터베이스를 제외한 리모트 저장소의 모든것을 가져옴

git pull - fetch, merge를 순서대로 실행하는 것. 가져온 후 병합까지 수행

git remote - 리모트 저장소 관리

git archive - 프로젝트 스냅샷을 아카이브 파일로 생성

git submodule - 저장소 안에서 다른 저장소를 관리

보기와 비교

git show - 태그나 커밋 정보를 사람이 읽을 수 있도록 요약해서 보임

git shortlog - log의 결과를 요약해서 보임

디버깅

git bisect - 이진 탐색을 사용하여 버그나 문제가 생긴 커밋을 확인

git blame - 파일의 각 라인을 누가 마지막으로 수정했는지 보임

git grep - 코드에서 문자열이나 표현 식을 검색

Patch

git cherry-pick - 브랜치 전체를 가져오는 것이 아닌, 커밋 하나만 가져옴

git rebase - 브랜치 전체를 가져옴. 순서대로 cherry-pick하는 것과 같음

git revert - 해당 커밋을 되돌리는 커밋을 새로 생성

참고자료