git 명령

기본 명령

  • git init: 새 저장소를 초기화
  • git config: 설정
  • git add: 변경된 파일을 staging area에 추가
  • git commit: staging된 변경사항을 저장
  • git status: 현재 작업 디렉토리 상태 조회
  • git diff: 변경된 내용 비교
  • git branch: 브랜치 생성/조회
  • git checkout: 브랜치 변경 또는 커밋 탐색
  • git switch: 브랜치 변경
  • git merge: 브랜치 병합
  • git rebase: 커밋 히스토리 재정렬
  • git clone: 원격 저장소를 복제
  • git pull: 원격 저장소에서 변경사항 내려받고 병합
  • git push: 로컬 커밋을 원격 저장소에 업로드
  • git tag: 특정 커밋에 태그 지정
  • git stash: 임시로 변경사항 저장 후 복구 가능하게 보관
  • git cherry-pick: 다른 브랜치 커밋을 현재 브랜치에 적용
  • git bisect: 버그가 생긴 커밋을 찾기 위한 바이너리 검색
  • git blame: 파일 각 줄의 마지막 수정자 및 커밋 확인

고급 명령

  • git hash-object: 파일 내용을 Git 오브젝트(blob)로 해시 처리하고, -w 옵션으로 .git/objects 저장
  • git write-tree: 현재 인덱스(staging area)를 기준으로 tree 오브젝트 생성
  • git commit-tree: tree 오브젝트와 메시지를 기반으로 commit 아이템 수동 생성
  • git update-ref: 브랜치 또는 참조(ref)를 특정 커밋 SHA로 갱신
  • git symbolic-ref: HEAD와 같은 reference를 다른 ref로 연결
  • git cat-file: 객체 타입, 크기, 내용을 출력 (e.g. git cat-file -t, -p)
  • git ls-tree: 특정 tree 오브젝트의 디렉토리 항목 나열
  • git ls-files: 인덱스 상태를 저수준 포맷으로 출력 (-s 옵션 포함)
  • git rev-parse: 브랜치 이름, 태그 등 입력을 SHA‑1 해시로 변환
  • git write-tree: 현재 인덱스를 tree 오브젝트로 저장
  • git commit-tree: commit 오브젝트 생성
  • git update-ref: HEAD를 최신 커밋으로 업데이트