티스토리 뷰
commit 문제
프로젝트의 컴밋을 관리하고 잘 기록하는 것은 중요하다. 누군가 기록을 들여다 보았을 때 어떤 기능을 하는 commit인지만 보아도 코드 전체를 보지않고 이해 할 수 있기 때문이다.
eslint나 prettier같은 경우도 코드스타일을 통일시키기 위한 노력으로 나왔다. 그리고 commit 또한 통일 시키고 더 자세하게 기록할 수 있게하면 잘 관리 할 수 있지 않을까? 라는 생각에서 commit lint 설정을 생각하게 되었다.
TODO?
commit message 작성법
commit lint
Commit message 작성법
구조
template
타입: 작업 설명(subject) // 타입과 간단한 설명을 작성한다.
여기에 **최대 50자까지 변경 사항에 대해 설명하세요**
본문(optional) // 길고 구체적으로 설명할 필요가 있을시 작성한다
필요하다면 여기에 좀 더 상세하게 설명하세요. 한 줄당 대략 **72자까지 맞출 수 있도록**
합니다. 일부 상황에서 첫 줄은 커밋의 제목이 되고, 그 후에 작성되는 텍스트는 본문으로
취급됩니다. 제목과 본문을 나누는 중간에 삽입되는 공백 행은 매우 중요합니다 (본문을
완전히 생략하지 않는 이상); `log` 와 `shortlog`, `rebase` 와 같이 다양한
도구들은 공백에 의존하므로 두 부분을 합쳐버릴 경우 도구가 혼동할 수 있습니다.
이 커밋이 해결하고자하는 문제를 설명합니다. 어떻게 했는지보단(코드가 설명할 것이기 때문),
**왜** 변경 사항을 적용했는지에 대해 집중합니다. 이 변경 사항으로 인해 생기는 부수 효과가
있거나 다른 직관적이지 않은 영향이 있을 수 있다면 여기에 설명하세요.
...
...
...
꼬리말(optional)
- 대규모 업데이트가 있을 때
- 특정이슈에 대한 해결작업일 때 (해결하지 못하거나 pending되면 꼬리말에 같이 작성)
앞으로 추가되는 문단은 공백 행 뒤에 옵니다.
- 필요하다면 강조점을 써도 됩니다
- 하이픈(-) 또는 별(*)이 주로 강조점으로 사용되고 이후 단일 공백(space)을 삽입합니다
강조점 사이에는 공백 행을 넣지만 규칙은 언제든지 바꿀 수 있습니다
이슈 트래커를 사용한다면 다음과 같이 레퍼런스를 메시지 하단에 삽입하세요:
Reslove: LEONI-103
See also: LEONI-105, LEONI-107
작성법
- 본문의 경우 구체적으로 작성할 것
- 무엇을 추가(변경) 하였는지, 왜 추가(변경) 하였는지 구체적으로 서술 할 것
- 내가 한 작업에 대해서 구체적으로 서술 할 것,
UI추가 (x) // what why에 대해서 없고 구체적이지 못하다
이미지리스트 컴포넌트에 타이틀 추가 (what)
이미지리스트를 기획에 맞게 이미지 뿐만아니라 타이틀 같이 추가 (why)(O)
밑에 두개는 꼭 읽어볼것!
commit-messages-guide/README_ko-KR.md at master · RomuloOliveira/commit-messages-guide
타입 구성요소
subject 부분에 작성
- feat: 새로운 기능
- fix: 버그수정
- docs: 도큐멘테이션 생성 및 변경
- chore: 패키지 매니저 변경 및 추가, 코드에 변경없음
- refactor: 리팩토링
- test: 테스트 추가 및 수정
- revert: 작업 되돌리기
- perf: 성능개선
- style: 공백, 세미콜론 등 코드 스타일 수정
commit lint 만들기
lint로 제한하기
- 타입과 메세지를 필수적으로 작성하여 브랜치의 의도를 나타낸다.
- body와 footer는 optional하게 작성한다.
- lint staged 생성 시 commit-msg bash 파일을 만들어서 git hook 관리
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
// yarn berry 버전 프로젝트에서 npx 대신 yarn dlx를 사용한다.
yarn dlx commitlint --edit $1
commit lint library
- husky
- @commitlint/cli
- @commitlint/config-conventional
commit 예시
$ git commit
// <subject>
[feat] save image at public dir and create summary UI
//<본문>
- summary UI에 필요한 이미지를 public에 저장
- summary UI 구현
// <footer>
Resolve: PROJECT-111
Reference
'git' 카테고리의 다른 글
gitlab flow (0) | 2023.03.11 |
---|
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 백준 22862
- storybook scss import
- storybook react is not defiend 해결
- nestjs 배포하기
- 가장 긴 짝수 연속한 부분 수열
- storybook scss이슈
- react suspense
- 표현 가능한 이진트리
- nextjs 에러핸들링
- node version yarn berry
- nextjs errorboundary
- 미로탈출 명령어
- 서비스 디자인 패턴
- serverless 배포
- useCallback과 useMemo 사용
- node 버전 마이그레이션
- 불량 사용자 자바스크립트
- React useMemo
- 1600 파이썬
- 자바스크립트
- 서버사이드 error handling
- 백준 1600번
- 에러핸들링
- javascript
- CSS
- 선언적 UI
- React useCallback
- serverless nestjs
- suspense 장점
- 관심사 분리하기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함