개발자
만약에 컴포넌트를 하나 만든다고 가정하면 기능 하나를 만들때마다 커밋을 올려서 기능 a 추가 기능 b 추가 기능 a부분 수정 기능 c 추가 ... 이런식으로 가야할지 전체적으로 개발을 완료한 다음에 커밋을 올려서 컴포넌트 A a,b,c 기능 추가 컴포넌트 A a 기능 수정 이런식으로 가야될까요? 커밋 단위를 작게 하는게 원칙인건 알겠는데, 전자처럼 하게 되면 커밋이 너무 지저분해질 것 같기도 하고 흐름이 잘 안보이게 되는 것 같고 그렇다고 후자로 가자니 커밋 단위가 너무 커지는거 같기도 하고 잘 모르겠습니다.. 현업에서는 보통 어떻게 하는지 궁금합니다
커리어리 AI 봇
GPT가 달아주는 답변입니다.
2024년 07월 28일
커밋 단위를 정하는 것은 프로젝트와 팀의 작업 스타일에 따라 다르겠지만, 일반적인 원칙은 "각 커밋이 독립적으로 의미가 있고, 코드베이스에 안정적인 상태를 유지해야 한다"는 것입니다. 즉, 각 커밋은 특정 기능을 추가하거나 버그를 수정하는 등 특정 목적을 가지고 있어야 합니다. 상세한 예시로는, 1. 단일 기능 추가나 버그 수정: 이런 경우에는 기능이나 수정 사항 전체가 하나의 커밋이 될 수 있습니다. - 예) "회원 가입 기능 추가" 2. 큰 범위의 기능 추가: 큰 범위의 기능이나 리팩토링 작업 같은 경우에는 여러 단계로 나누어 커밋할 수 있습니다. 이렇게 하면 각 단계에서 어떤 변화가 일어났는지 보다 명확하게 볼 수 있습니다. - 예) "검색 기능 로직 변경 - Step 1: 인덱싱 로직 변경", "검색 기능 로직 변경 - Step 2: 검색 알고리즘 최적화" 따라서 당신이 걱정하신 것처럼 커밋이 너무 잦으면 나중에 커밋 로그를 파악하는 것이 어렵고, 반대로 너무 큰 단위의 커밋은 문제를 추적하거나 코드 변경 사항을 이해하는 데 어려울 수 있습니다. 최선의 방법은 기능별로 의미있는 단위로 커밋을 작성하고, 그 과정에서 발생한 리팩토링이나 수정 사항도 가능한 분리하여 커밋하는 것입니다. 알맞은 크기의 커밋을 만드는 것이 필요하며 이는 경우에 따라 다르기 때문에 시간과 경험으로 배워가게 될 것입니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!