반응형
Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
Tags
- 자바스크립트
- 문자열
- 정규식
- Eclipse
- 자바문법
- 스프링부트
- Visual Studio Code
- junit5
- Java
- string
- input
- 테스트자동화
- 인텔리제이
- SpringBoot
- java테스트
- HashMap
- junit
- vscode
- math
- html
- Array
- javascript
- 자바
- list
- js
- 배열
- CSS
- ArrayList
- 단위테스트
- IntelliJ
Archives
- Today
- Total
어제 오늘 내일
[Git] 아차! 실수했다... 커밋 메시지 수정하는 법 본문
열심히 커밋을 남겼는데 오타를 발견했거나, 규칙을 깜빡하고 '수정'이라고만 적어버린 적 있으시죠? 당황하지 마세요. Git에는 과거를 되돌릴 수 있는 강력한 타임머신 기능이 있습니다.
상황별로 가장 자주 쓰이는 세 가지 해결책을 깔끔하게 정리해 드립니다.
1. 방금 만든 커밋 메시지 수정하기 (--amend)
가장 많이 발생하는 상황입니다. 방금 'commit' 버튼을 눌렀는데 바로 오타를 발견했을 때 사용합니다.
- 명령어:
git commit --amend -m "새로운 메시지" - 설명: 이 명령어를 치면 방금 올린 커밋이 사라지고, 새로운 메시지가 담긴 커밋으로 덮어쓰기 됩니다. 코드 변경 없이 메시지만 바꾸고 싶을 때 아주 유용합니다.
2. 조금 지난 과거의 메시지 수정하기 (rebase -i)
방금 전이 아니라 2~3개 전, 혹은 더 오래된 커밋 메시지를 고치고 싶을 때 사용하는 고수들의 기술입니다.
수정 단계:
- 지점 찾기: 터미널에
git rebase -i HEAD~3을 입력합니다. (최근 3개 커밋을 보겠다는 뜻입니다.) - 명령 변경: 편집기가 열리면 수정하고 싶은 커밋 옆의
pick이라는 글자를reword(또는r)로 바꾸고 저장합니다. - 메시지 고치기: 다시 열리는 편집기 창에서 진짜 원하는 메시지로 수정한 후 저장하면 끝!
3. 이미 푸시(Push)한 메시지 수정하기
이미 팀원들이 사용하는 원격 저장소(GitHub 등)에 코드를 올려버렸다면 조금 더 주의가 필요합니다.
- 위에서 배운 방법(
--amend나rebase)으로 내 컴퓨터의 메시지를 먼저 수정합니다. - 수정된 내용을 강제로 반영합니다:
git push origin 브랜치명 --force
⚠️ 주의사항:
--force는 저장소의 역사를 강제로 바꾸는 기능입니다. 다른 팀원과 함께 작업 중인 브랜치라면 기록이 꼬일 수 있으니, 혼자 작업하는 브랜치에서만 사용하는 것을 권장합니다.
💡 한눈에 보는 상황별 해결법
| 상황 | 사용해야 할 명령어 | 특징 |
| 직전 커밋 수정 | Git commit --amend | 가장 쉽고 안전함 |
| 과거 커밋 수정 | git rebase -i HEAD~n |
여러 개를 한꺼번에 고칠 때 유용 |
| 이미 원격에 올림 | 수정 후 push --force |
팀원과 상의 후 사용 권장 |
마치며
rebase는 단순히 글자만 바꾸는 게 아니라 커밋의 고유 ID를 새로 생성하는 작업입니다. 따라서 협업 중에는 늘 신중해야 하죠. 가장 좋은 방법은 커밋하기 전, 'commit' 규칙에 맞게 썼는지 한 번 더 확인하는 습관을 들이는 것입니다!
반응형
'IT > Git' 카테고리의 다른 글
| [Git] 커밋을 되돌리고 싶을 때! Reset vs Revert 완벽 정리 (0) | 2026.03.06 |
|---|---|
| [Git] 방금 한 커밋 되돌리기: git commit --amend 완벽 활용법 (0) | 2026.03.06 |
| [Git] commit 메시지 작성법 7가지 (0) | 2026.03.05 |
| [Git] .gitignore 사용법 : 깃허브에 올리면 안 되는 파일 숨기기 (0) | 2026.02.22 |
| [Github] Github에 기존 프로젝트 올리기 (0) | 2026.02.22 |
Comments
