git 프로젝트 사전 test 설명

1. git flow

Vincent Diessen의 branching model을 적용하여 고수준으로 저장소를 관리할 수 있도록 해주는 확장기능

Untitled

Git-flow의 브랜치(우리팀이 사용하는 것 선으로 구분)


2. git-flow 위한 명령어

git-flow 사용하기, gitflow로 branch를 관리하자!! 여기서 참고

시작

$ git flow init

Features

3. Git commit 전략

{flow}/{구역}/{기능}

ex) feature/back/login
ex) feature/front/calendar

git commit message (git 컨벤션)

우리는 type , subject과 footer만 필수!

제목, 본문, 꼬리말 세 파트 각 파트는 빈줄을 두어 구분

type(옵션): [#issueNumber - ]Subject  // -> 제목
(한 줄을 띄워 분리합니다.)
body(옵션) //  -> 본문
(한 줄을 띄워 분리합니다.)
footer(옵션) // -> 꼬리말

01 제목 작성 (type, subject)

type

태그와 제목으로 구성되고, 태그는 영어로 쓰되 첫 문자는 대문자로 합니다.

Untitled

Subject

  1. 제목의 처음은 동사 원형으로 시작합니다.
  2. 총 글자 수는 50자 이내로 작성합니다.
  3. 마지막에 특수문자는 삽입하지 않습니다. 예) 마침표(.), 느낌표(!), 물음표(?)
  4. 제목은 개조식 구문으로 작성합니다.
  5. (우리 규칙) 따옴표 안씀
ex)
Feat: Add get data api 함수

02 본문(body) (안써도됨)

  1. 본문은 한 줄 당 72자 내로 작성합니다.
  2. 본문 내용은 양에 구애받지 않고 최대한 상세히 작성합니다.
  3. 본문 내용은 어떻게 변경했는지 보다 무엇을 변경했는지 또는 왜 변경했는지를 설명합니다.

03 꼬리말(footer)

  1. 꼬리말은 optional이고 이슈 트래커 ID를 작성합니다.
  2. 꼬리말은 "유형: #이슈 번호" 형식으로 사용합니다.
  3. 여러 개의 이슈 번호를 적을 때는 쉼표로 구분합니다.
  4. 이슈 트래커 유형은 다음 중 하나를 사용합니다. \- Fixes: 이슈 수정중 (아직 해결되지 않은 경우) \- Resolves: 이슈를 해결했을 때 사용 \- Ref: 참고할 이슈가 있을 때 사용 \- Related to: 해당 커밋에 관련된 이슈번호 (아직 해결되지 않은 경우) ex) Fixes: #45 Related to: #34, #23

최종 커밋 메시지 작성

Feat: "추가 로그인 함수"

로그인 API 개발

Resolves: #123
Ref: #456
Related to: #48, #45

참고 1: rebase

커밋들을 모아서 복사한 뒤, 다른 곳이 덜궈 놓는 것. 리베이스를 하면 커밋들의 흐름을 보기 좋게 한 줄로 만들 수 있다는 장점이 있다.

# 1. `bugFix`라는 새 브랜치를 만들어 선택하세요
$ git branch bugFix
$ git checkout bugFix
# 2. 커밋 한 번 합니다
$ git commit
# 3. `main` 브랜치로 돌아가서 또 커밋합니다
$ git branch main
$ git checkout main
$ git commit
# 4. `bugFix`를 다시 선택하고 `main`에 리베이스 하세요
$ git checkout bugFix
$ git rebase main

참고 2: 커밋 메시지 Emoji (나중에라도...!)

이모지를 넣어서 쉽게 어떤 용도로 커밋햇는지 태깅으로 검색하기 위해 이모지를 쓴다.

제목 없음

참고 3: Git 명령어 연습 사이트