커리어 팁개발 습관 › 커밋 메시지는 무엇을 남겨야 하는가 — 나중에 읽는 사람이 자신일 때

커밋 메시지는 무엇을 남겨야 하는가 — 나중에 읽는 사람이 자신일 때

2026-08-28 · 개발 습관
한 줄 요약

커밋 메시지의 독자는 6개월 뒤의 자신이다. 무엇을 왜 바꿨는지 남기는 최소 형식.

독자는 6개월 뒤의 자신

커밋 메시지를 쓸 때 "지금 무엇을 했는지"만 적으면 대개 코드에 이미 적혀 있는 내용이 된다.

```

```

이런 메시지는 git log를 볼 때 아무것도 알려주지 않는다. 정작 필요한 순간은 6개월 뒤 이 줄이 왜 이렇게 됐는지 추적할 때이고, 그때 필요한 것은 "무엇을"이 아니라 "왜" 다.

최소 형식

제목 한 줄이면 충분한 경우가 많다. 대신 다음을 담는다.

```

<범위>: <무엇이 어떻게 달라지는가>

```

예:

```

로그인: 세션 만료 시 갱신 시도 후 재시도

파서: 빈 배열 입력에서 예외 대신 빈 결과 반환

```

동작의 변화가 드러나야 한다. "수정"이 아니라 "무엇이 어떻게 달라지는가"다.

본문이 필요한 경우

제목으로 부족한 상황이 있다. 이때 본문에 쓸 것은 배경과 이유다.

```

캐시: 조회 결과를 요청 단위로만 유지

전역 캐시를 쓰면 배포 직후 이전 버전 응답이 섞여 나온다.

요청 단위로 줄이면 중복 조회 제거 이득은 유지하면서

버전 간 오염이 사라진다. 성능 손실은 요청당 1회 조회 수준.

```

코드 리뷰에서 나온 논의를 여기 남겨두면 나중에 같은 논의를 반복하지 않는다.

커밋 단위

메시지보다 앞서는 문제다. 한 커밋에 하나의 논리 변경.

섞으면 안 되는 조합:

작업하다 보면 섞이기 마련이므로, 커밋 전에 나누는 습관이 필요하다.

```bash

git add -p # 변경 조각 단위로 선택

```

접두어를 쓸 것인가

컨벤셔널 커밋 형식(feat:, fix:, chore: 등)은 자동 릴리스 노트 생성 도구를 쓸 때 실익이 크다. 쓰지 않는다면 필수는 아니다.

다만 접두어가 있으면 git log --oneline에서 훑기 쉬워지는 이득은 남는다. 최소한으로 쓴다면:

동작이 바뀌는가(feat/fix)와 안 바뀌는가(refactor)를 구분하는 것만으로도 히스토리 가독성이 크게 달라진다.

확인 방법

지금 저장소의 히스토리를 훑어본다.

```bash

git log --oneline -30

```

읽으면서 "이건 무슨 변경이었지?"가 생기는 줄이 절반을 넘으면, 메시지가 제 역할을 못 하고 있는 것이다. 과거를 고칠 필요는 없고, 다음 커밋부터 바꾸면 된다.

최종 수정 2026-08-28

자주 묻는 질문

커밋 메시지를 영어로 써야 하나요?

팀 합의의 문제입니다. 혼자 하는 프로젝트라면 한국어도 무방하며, 일관성이 더 중요합니다.

한 커밋에 여러 변경을 넣으면 안 되나요?

되돌리기와 원인 추적이 어려워집니다. 논리 단위로 나누면 나중에 특정 변경만 되돌릴 수 있습니다.

컨벤셔널 커밋 형식을 꼭 써야 하나요?

자동 릴리스 노트 생성 등을 쓰지 않는다면 필수는 아닙니다. 다만 접두어가 있으면 목록에서 훑기 쉬워집니다.

오늘의 코드로 GitHub 활동 분석받기

공개 레포지토리 활동을 분석해 기술 역량을 점수화하고, 맞춤형 학습 로드맵과 퀴즈를 제공합니다.

App Store에서 받기 →

안내 및 면책조항

이 글은 개발자 커리어와 성장에 참고할 수 있는 일반적인 정보와 조언을 제공하며, 특정 개인의 상황에 꼭 맞는 해답을 보장하지 않습니다. 채용·연봉 등 구체적인 의사결정이 필요한 사안은 실제 채용 공고와 각 기업의 공식 안내를 함께 확인하시기 바랍니다.

글 중 일부는 AI 도구의 도움을 받아 초안을 작성한 뒤 발행됩니다. 통계·사례를 인용한 경우 출처를 표기하려 노력했으나, 출처가 없는 서술은 일반적인 통설이나 업계 조언으로 이해해주시기 바랍니다.

내용 중 사실과 다르거나 수정이 필요한 부분을 발견하시면 지원 페이지의 문의 채널로 알려주세요. 확인 후 신속히 반영하겠습니다.