Git, CocoaPods, Xcode, Shell/Git

[Git - terminal] git 유용한 명령어 모음 (커밋, 상태, 로그, 되돌리기, Interactive)

jake-kim 2023. 5. 9. 01:08

커밋

  • git commit m "add commit": 현재 stage에 올라간 것들을 커밋
  • git commit -am "add commit": stage에 올리기 + 커밋

상태

  • git status: 현재 stage에 올라간 파일과 unstage에 올라간 파일 확인 가능
  • git diff: 변경된 내용 확인 
    • git diff --staged: commit된 파일 vs add된 파일
    • git diff {해쉬1} {해쉬2}: commit간 비교 
    • git diff {브랜치1} {브랜치2}: 브랜치간 비교
  • git log --graph: 커밋 최종 결과만 그래프로 확인
  • git reflog: 커밋 결과 뿐만이 아닌 수정사항까지 다 나옴 (어디서 git rebase -i를 했고, squash를 했고 모든 것을 기록)

되돌리기

  • 리셋 (구체적인 내용은 포스팅 글 참고)
    • git reset {commit hash}
    • git reset HEAD^
    • git reest HEAD~2
    • rebase interactive 되돌리기 (git reset과 git reflog 사용)
  • git restore --staged .: 현재 stage 영역을 unstage로 내림 (git add . 와 반대)

Interactive

  • git add -p: 특정 라인만 추가 (이전 포스팅 글 참고)
  • git rebase -i: 커밋된 내용 순서 변경, 커밋 메시지 수정, 커밋 스쿼시 (이전 포스팅 글 참고)
  • interactive는 대부분 vim 모드에서 수정하는것이 많으므로 vim 단축키를 미리 알고 있으면 유용
    • 방향키: h, j, k, l
    • 한줄 삭제: dd
    • 해당 커서부터 마지막위치까지 삭제: shift + d
    • 되돌리기: u
    • 해당 커서에 있는 문자 삭제: x