깃헙에 repository를 생성하고 로컬로 복제하여 작업을 수행하게 되는데 언제 커밋을 해야하고 커밋 메세지를 어떻게 작성해야 할 지 몰랐습니다. 그래서 어떻게 의미있는 커밋 메세지를 작성하고 왜 중요하며 언제 커밋을 해야하는지 정리해 보겠습니다.
우리가 회사에 지원할 때 고용주들은 깃헙에 있는 우리의 프로젝트를 볼 것이고 커밋 기록도 살펴볼 것입니다. 초보 개발자로써 좋은 커밋 메시지(Having a good commit message)를 가지고 있다면 눈에 띄는데 도움을 줄 것 입니다.
좋은 커밋 메시지 기록은 무엇이 왜 변했는지 빠르게 알 수 있게 도와줍니다. 이것은 수정해야 할 코드에서 버그가 발견된 경우 유용합니다.
작업하던 프로젝트에서 잠시 멈춰 있다가 돌아 오더라도 변경 사항과 생각 과정을 쉽게 기억할 수 있습니다.
나쁜 예시
message : fix a bug
위에 메세지는 수행한 작업을 설명하지만 메시지가 너무 모호해서 팀의 다른 개발자를 더 헷갈리게 합니다. 좋은 커밋 메시지는 변경 이유를 설명합니다. 변경 사항이 어떤 문제를 해결하고 어떻게 해결하는지 설명해야 합니다.
효과적인 커밋은 주제와 본문의 두 부분으로 구성됩니다.
Subject : 프로젝트에 변경사항에 대한 짧은 요약.
Body : 수행한 작업에 대한 간결하면서도 명확한 설명.
위에서 fix a bug 메시지를 다음과 같이 수정할 수 있습니다.
Subject : Add missing link and alt text to the company's logo
Body: Screen readers won't read the images to users with disabilities without this information
커밋을 바라보는 좋은 접근은 코드가 만들어지는 순간에 코드의 "snapshot"이라고 보면 좋을 것 같습니다. 이 순간에 코드 버전은 되돌리거나 다시 볼 수 있도록 저장됩니다.
코드를 작성할 때 코드에 의미 있는 변경이 있을 때마다 커밋하는 것이 모범 사례로 여겨집니다. 이렇게 하면 진행 상황에 대한 타임라인이 생성되고 코드가 갑자기 나타나지 않았음을 보여줄 수 있습니다.