본문 바로가기
Environment/Git

Git Rebase로 커밋 수정하기

by 신림쥐 2025. 12. 1.
728x90
반응형

 

     


     

    개요

    Git에서 여러 커밋을 정리하거나 수정, 합치기(squash), 삭제, 재정렬 할때 사용하는 rebase에 대해 정리한 포스팅입니다.

     

    기본 개념

    git rebase -i <커밋> 은 지정한 커밋 이후의 커밋들을 편집할 수 있는 기능입니다. <커밋>은 기준 커밋으로, 이 커밋 이후 커밋들을 재작성 대상으로 삼습니다.

     

    주요 옵션

    • pick : 커밋 그대로 사용
    • reword : 커밋 메시지 수정
    • edit : 커밋 내용 수정
    • squash : 이전 커밋과 합치기
    • drop : 커밋 삭제

     

    주의 사항

    이미 원격에 푸시된 커밋을 rebase 후 강제 푸시(--force) 해야 할 수 있음
    협업 브랜치에서 rebase 사용 시 다른 사람 작업과 충돌 가능
    중요한 커밋은 삭제 전 반드시 백업해야 합니다.

     

     

    기본 예시

    커밋 이후의 모든 커밋이 목록으로 나타나 편집할 커밋 아이디를 적습니다.

    git rebase -i 4aaa1e8
     

    1. 커밋 메시지 수정

    편집기에서 표시된 커밋 메시지를 수정 후 저장하면 수정 내용이 반영됩니다.

    pick abc1234 Add login feature
    reword def5678 Fix login bug
    pick 789abcd Update README

     

    2. 커밋 합치기 (Squash)

    def5678 커밋을 abc1234 커밋에 합치면서 하나의 커밋으로 정리됩니다.

    pick abc1234 Add login feature
    squash def5678 Fix login bug
    pick 789abcd Update README

     

    3. 커밋 삭제

    def5678 커밋이 역사에서 완전히 제거됩니다.

    pick abc1234 Add login feature
    drop def5678 Fix login bug
    pick 789abcd Update README

     

     

     

    728x90
    반응형