반응형
개발을 하다 보면 이미 PR(Pull Request)을 생성했지만, 커밋 메시지를 수정하거나 작은 실수를 고쳐야 하는 경우가 있습니다.
이때 PR을 닫고 다시 만드는 대신 기존 PR에서 커밋을 수정할 수 있습니다.
오늘은 PR을 닫지 않고 커밋을 수정하는 Git 명령어를 소개합니다.
1. 상황 예시
- PR을 생성하고 팀원에게 리뷰를 요청했는데, 커밋 메시지를 잘못 작성함
- 또는 작은 코드 수정이 필요한데, 새로운 커밋을 추가하지 않고 기존 커밋에 반영하고 싶음
이럴 때, 기존 PR을 그대로 유지하면서 커밋을 수정할 수 있습니다.
2. 명령어 순서
1️⃣ 최근 커밋을 소프트 리셋
git reset --soft HEAD~1
- HEAD~1은 바로 이전 커밋을 의미합니다.
- --soft 옵션을 사용하면 파일 변경 사항은 그대로 스테이징 상태에 남습니다.
- 즉, 커밋만 초기화되고 작업 내용은 그대로 유지됩니다.
2️⃣ 커밋 메시지 수정 (또는 재커밋)
git commit --amend
- 기존 커밋을 수정하여 새로운 메시지로 업데이트할 수 있습니다.
- 파일 변경 사항을 추가하거나 수정도 가능합니다.
3️⃣ 수정된 커밋을 원격에 강제로 푸시
git push -f origin branch-name
- -f 옵션을 사용하여 원격 브랜치에 강제로 덮어씌웁니다.
- 이렇게 하면 기존 PR에 반영되므로, PR을 닫거나 새로 만들 필요가 없습니다.
3. 주의사항
- 이미 다른 사람이 해당 브랜치를 기반으로 작업 중이라면 강제 푸시(-f)는 충돌을 일으킬 수 있습니다.
- 따라서 팀 내 협업 시에는 반드시 사전에 알리고 진행하는 것이 좋습니다.
반응형
'개발도구 > Git' 카테고리의 다른 글
| [Git] GitHub Actions로 Pull Request Labeling 자동화하기 (0) | 2025.09.19 |
|---|---|
| [Git] GitHub Actions로 Pull Request 자동 Assignees 지정하기 (0) | 2025.09.17 |
| [GIT] YOLO Achievements 획득 방법 (깃허브 뱃지) (0) | 2024.06.12 |
| [Git] 깃허브(github) pro 사용하기 (대학교 이메일 인증) (0) | 2022.06.27 |
| [GIT] Git GUI - 소스트리(SourceTree) 설치방법 (0) | 2021.10.08 |