본문 바로가기
AI/Study

Git 커밋의 기술: 신입 개발자(나)를 위한 가이드

by 민윤홍 2024. 1. 10.
728x90

안녕하세요. Acorn입니다.

 

개발자로서 우리의 일상은 코드를 작성하고, 수정하고, 개선하는 과정에서 이루어집니다. 이 모든 과정은 Git과 같은 버전 관리 시스템을 통해 관리됩니다. Git의 중심 기능 중 하나는 '커밋(commit)'인데, 이는 우리의 변경 사항을 기록하는 중요한 단계입니다. 그러나 많은 신입 개발자들이 이 과정을 어떻게 해야 할지, 또는 어떻게 하면 효과적으로 할 수 있을지에 대해 종종 혼란을 겪습니다.

오늘은 Git에서 커밋을 하는 법과, 특히 '개발자다운' 커밋을 하는 방법에 대해 알아보려 합니다.

 

Git 커밋이란?

Git 커밋은 버전 관리 시스템에서 변경 사항을 기록하는 행위입니다. 커밋을 통해 우리는 코드의 변경 내역, 변경 이유, 그리고 그 변경이 언제 이루어졌는지를 추적할 수 있습니다. 이는 협업하는 개발 팀원들 간의 명확한 의사소통을 가능하게 하며, 필요시 이전 버전으로 쉽게 되돌아갈 수 있게 해줍니다.

 

신입 개발자(나)의 일반적인 커밋 방법

 

신입 개발자들은 보통 아래와 같이 커밋합니다.

커밋 메시지: "2024/01/09 커밋."
변경 내용: "에러 수정 완료."


이러한 커밋 방식은 간단하고 직관적이지만, 몇 가지 중요한 정보가 누락되어 있습니다. 예를 들어, 어떤 에러를 수정했는지, 왜 그 에러가 발생했는지, 어떤 방법으로 수정했는지 등의 정보가 포함되어 있지 않습니다.

 

개발자다운 커밋을 위한 팁

  1. 명확하고 구체적인 커밋 메시지 작성: 커밋 메시지는 변경 사항을 명확하게 설명해야 합니다. 예를 들어, "로그인 기능 오류 수정" 또는 "메모리 누수 문제 해결"과 같이 구체적으로 작성합니다.
  2. 변경 사항과 그 이유 설명: 커밋에는 단순히 무엇을 변경했는지뿐만 아니라, 왜 그런 변경이 필요했는지도 설명해야 합니다. 이는 팀원들이 커밋의 목적을 이해하는 데 도움이 됩니다.
  3. 적절한 커밋 크기 유지: 너무 많은 변경 사항을 한 번에 커밋하는 것은 피해야 합니다. 작고 관리 가능한 단위로 커밋을 나누어 작업의 흐름을 이해하기 쉽게 만드는 것이 좋습니다.
  4. 일관된 커밋 규칙 유지: 팀 내에서 일관된 커밋 규칙을 정하고, 이를 따르는 것이 중요합니다. 이는 협업 과정에서의 혼란을 줄이고, 코드 기록을 명확하게 유지하는 데 도움이 됩니다.

 

Github Desktop 사용자를 위한 커밋 메시지의 5가지 규칙

  1. 제목은 50글자 이내로 제한한다.
  2. 제목의 첫 글자는 대문자로 작성한다.
  3. 제목 끝에는 마침표를 넣지 않는다.
  4. 제목은 명령문으로 사용하며 과거형을 사용하지 않는다.
  5. 어떻게 보다는 무엇과 왜를 설명한다.

커밋 메시지 구조

// Header, Body, Footer는 빈 행으로 구분한다.
타입(스코프): 주제(제목) // Header(헤더)

본문 // Body(바디)

바닥글 // Footer

Header 필수이며 스코프는 생략 가능합니다.

타입은 해당 커밋의 성격을 나타내며 아래 중 하나여야 합니다.

 

타입 이름내용

feat 새로운 기능에 대한 커밋
fix 버그 수정에 대한 커밋
build 빌드 관련 파일 수정 / 모듈 설치 또는 삭제에 대한 커밋
chore 그 외 자잘한 수정에 대한 커밋
ci ci 관련 설정 수정에 대한 커밋
docs 문서 수정에 대한 커밋
style 코드 스타일 혹은 포맷 등에 관한 커밋
refactor 코드 리팩토링에 대한 커밋
test 테스트 코드 수정에 대한 커밋
perf 성능 개선에 대한 커밋

Body는 Header에서 표현할 수 없는 상세한 내용을 적습니다.

Header에서 충분히 표현할 수 있다면 생략 가능합니다.

Footer는 바닥글로 어떤 이슈에서 왔는지 같은 참조 정보들을 추가하는 용도로 사용합니다.

예를 들어 특정 이슈를 참조하려면 Issues #1234 와 같이 작성하면 됩니다.

Footer는 생략 가능합니다.

관련 내용 - Github 이슈와 커밋 메시지 연결

작성 예시

 

 

효과적인 Git 커밋은 개발자로서의 성장과 협업에 있어 중요한 부분입니다. 명확하고 의미 있는 커밋을 통해, 우리는 더 나은 코드 관리자가 될 수 있으며, 팀원들과의 소통도 개선됩니다. 신입 개발자들은 이러한 팁을 통해 더 나은 커밋 습관을 개발할 수 있을 것입니다.

728x90