본문으로 바로가기

커밋 컨벤션

category TIL 2025. 3. 13. 13:12
  • 태그
    • add : 새로운 파일 및 폴더 추가
    • feat : 새로운 기능 추가
    • bugfix : 버그 수정
    • fix : 코드 수정
    • refactor : 코드 리팩토링
    • docs : 문서 작업
    • comment : 주석
    • move : 파일/폴더 옮김
    • del : 기능/파일/폴더 삭제
    • design : 디자인 작업
    • ToDo : 해야할 것 mention




--

6. 코딩 컨벤션

https://overcome-the-limits.tistory.com/5 (← 예시)

https://leffept.tistory.com/414

https://adeveloperstory.tistory.com/entry/gitignore을-사용해-github에-API-Key-숨기고-올리기

  • Naming Convention
    • 파일명은 스네이크
    • 변수, 함수, 인스턴스는 카멜 케이스
    • 약칭 사용 지양하기(idx → index, cnt → count)
    • 20자 이내 작명
    • 상수: 대문자 + 언더스코어(_)
  • 파일 폴더
    • lib
      • core
      • data
        • model
        • repository
      • ui
        • pages
        • widgets
  • 코드 작성
    • 함수로 나눌 수 있는 코드는 다 나누기
    • 함수로 나눈 후 주석으로 설명
  • 함수 주석
    • 함수의 전체 기능에 대한 설명
    • 함수의 파라미터에 대한 설명 (type: ..., 역할)
  • /** * @api {get} /study/:roomNumber/questions?sort_by=created&order_by=asc 방의 질문 목록을 가져옴 * @apiName GetQuestions * @apiGroup Question * * @apiParam {String} roomNumber 유일한 방 번호 * * @apiSuccess {Boolean} success API 호출 성공 여부 * @apiSuccess {String} message 응답 메시지 * @apiSuccess {Object} data 해당 방의 질문 리스트 */ /// 주석 router.get( "/study/:roomNumber/questions", [checkParamAndQuery("roomNumber").isNumeric()], getQuestions.default ); 출처: <https://overcome-the-limits.tistory.com/5> [Plus Ultra:티스토리]
  • 함수 작성
    • 파라미터 개수 제한 - 3개까지
  • magic number 지양
    • 매직넘버: 코드에서 숫자를 직접 사용하는 것
    • 숫자, 문자열을 직접 입력해야 하는 경우, constant.dart 파일에 변수 등록하여 사용.
    • alert(”로그인에 실패하였습니다”);
    • final LOGIN_FAIL_MESSAGE = “로그인에 실패하였습니다”; alert(LOGIN_FAIL_MESSAGE);

7. 커밋 컨벤션 (PR 시 동일하게 적용)

  • 태그
    • feat : 새로운 기능 추가
    • add : 새로운 파일 및 폴더 추가
    • bugfix : 버그 수정
    • fix : 코드 수정
    • refactor : 코드 리팩토링
    • docs : 문서 작업
    • comment : 주석
    • move : 파일/폴더 옮김
    • del : 기능/파일/폴더 삭제
    • design : 디자인 작업

8. 브랜치 룰 & 전략

  • 브랜치 룰
    • 새로운 기능 개발 시 : feature/기능-이름 ex) feature/product-list
    • 버그 픽스 : bugfix/이슈-이름 ex) bugfix/product-empty-error
    • 문서 작업 시 : docs/작업-영역
  • 각자 맡은 작업별 브랜치 생성([태그]/[단어-사이-대시])
  • 충돌 발생 시 당사자들 간 해결 후 다시 PR 작성

브랜치

  • 메인
    • 개발
      • 각자 작업한 브랜치들