HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🧐
Sonny
/
🧐
git commit 로그 조작하기
🧐

git commit 로그 조작하기

날짜
Jul 18, 2023

History

  • release/v2.0.0에서 fix/task-807을 따서 작업한 상황
  • 새로운 작업이 발생하여 fix/task-807에서 fix/task-808을 따서 작업을 하고 fix/task-807로 머지 필요

Issue

  • release/v2.0.0에서 fix/task-808을 땄음
  • fix/task-808에서 작업을 완료한 후 push
    • fix/task-807을 pull하면 되지만 커밋 흐름 유지를 위해 807 → 808 순서로 커밋을 변경하고 싶음

Solution

새로운 작업 제거하기

  • fix/task-808 브랜치에서 808건의 작업들을 drop 시킴
    • // 작업이 1건밖에 없었음 git rebase -i HEAD~2
      // pick 008ec7d8 이전 작업 pick 3d750182 808건 관련 작업 . . .
      // pick 008ec7d8 이전 작업 d 3d750182 808건 관련 작업 . . .
    • i를 눌러 편집 모드로 들어간 후 3d750182의 앞에 pick을 d(rop)으로 변경 후 wq를 눌러 편집 저장
  • push된 브랜치와 현재 브랜치의 커밋이 달라졌음 → 현재 브랜치로 업데이트 필요 : force push
    • git push -f

base 브랜치 merge

git merge fix/task-807

새로운 작업 가져오기

stash로 해당 작업 저장하지 못한 경우, rebase로 인해 해당 작업이 날아가서 다시 불러와야 함
  • reflog를 통해 현재 브랜치 작업 상황 파악
    • git reflog
      1166a6ce (origin/fix/task-808) HEAD@{5}: rebase (start): checkout HEAD~2 89c43c8f HEAD@{6}: commit: 808건 관련 작업 ...
    • 해당 커밋 해시 복사
  • cherry pick을 이용해서 복사해둔 커밋 가져오기
    • // 89c43c8f: 커밋 해시 git cherry-pick 89c43c8f