Skip to content

Git 컨벤션

simeunseok edited this page Nov 2, 2021 · 4 revisions

branch naming

main - develop - feature 브랜치를 사용

feature 브랜치 네이밍

: feature/#<issue_number>

Commit message

구조

커밋 메시지는 세 부분으로 구성된다.

Issue #<issue number> type: subject

body(option)

footer(option)

type

커밋의 성격을 간단히 나타내는 단어. 다음 중 하나를 사용하거나 필요에 따라 추가할 수 있다.

  • feat: 새로운 기능
  • fix: 버그 수정
  • docs: README, gitignore 주석 수정
  • refactor: 코드 리팩터링
  • test: 테스트 코드가 추가되거나 리팩터링 시 사용하며 프로덕션 코드는 변경되지 않는다.
  • chore: 프로젝트 환경설정 변경, 빌드 구성 변경 등에 사용되며 프로덕션 코드는 변경되지 않는다.
  • layout
  • res

subject

  • ex Issue#14 feat: 각 문단의 그룹과 순서를 변경 커밋 메시지의 제목을 나타낸다.

한글로 작성하며 총 50자 이내로 작성되어야 하고ㅡ 마침표를 쓰지 않는다. 구어체나 문장형이 아닌 명령형으로 작성한다. ex) 헤더 타이틀 변경

body(option)

커밋이 단순하다면 생략할 수 있다.

어떤 작업(what)을 수행했는지와 목적(why)에 대해 작성하며, 작업을 어떻게(how) 수행했는지는 작성하지 않는다.

body에서 각각의 라인당 72자를 초과해선 안된다.

footer(option)

이슈 트래커의 ID 등을 표시하는데 사용된다.

이슈 트래커 유형은 다음 중 하나를 사용한다.

  • Fixes: 이슈 수정중 (아직 해결되지 않은 경우)
  • Resolves: 이슈를 해결했을 때 사용
  • Ref: 참고할 이슈가 있을 때 사용
  • Related to: 해당 커밋에 관련된 이슈번호 (아직 해결되지 않은 경우)

이슈 & PR 템플릿

issue

  • 라벨 달기(app, library, chore, bug, hotfix, feature)
  • project달기
  • 마일스톤 달기
  • asignees 지정

제목

prefix 없이 수행할 작업을 간략히 작성 ex) CalendarView 구현

진행 상황

  • ex)
  • 레이아웃 구성
  • [ ]

pull request

뱅크샐러드 참고

제목

issue 와 동일하게 작성

what is this pr

Changes

screenshot

testchecklist(가능?)