Skip to content

Git Convention

chaeeun037 edited this page Jul 26, 2021 · 1 revision

Git Convention

git과 github에 관련된 컨벤션입니다. branch, commit, issue, pull request에 관련된 내용을 담고 있습니다.

1. git 협업 workflow

  • gitflow 를 사용한다.

Branch Rule

Master branch

  • 배포하는 코드가 merge 된다.
  • 절대로 직접적으로 commit 하지 않는다.
  • merge되면 배포되도록 CI/CD를 구성한다.
    • master push 실행 시, 서버에 자동 배포

Develop branch

  • 최초 Master branch에서 파생된다.
  • 개발되는 feature들이 merge되는 브랜치이다.
  • 팀에서 유지되는 가장 최신의 코드이다.

Feature branch

  • 절대로 직접적으로 commit 하지 않는다.
  • Feature branch는 Develop branch에서만 파생된다.
  • 각 기능들이 따로따로 가지게 되는 브랜치다.
  • 실제 브랜치명은 'feature/이슈 내용을 알수 있는 이름' 이다
    • ex.) feature/webpack-babel

Release branch

  • Release branch는 Develop branch에서만 파생된다.
  • Develop브랜치에 배포를 할 만큼 feature가 모이면 Release 브랜치로 merge한다.
  • staging 서버로 배포되며 실사용 테스트를 통과하면 master로 merge를 준비한다.

Hotfix branch

  • Master 브랜치에 배포된 코드가 문제가 있을 시, 매우 급박하게 에러를 수정해야 할 상황에 Master 브랜치에서 Hotfix 브랜치를 파생하여 문제를 수정한 후 다시 Master 브랜치로 Merge한다.

Commit Rule

  • 대분류

    • feature
    • fix
    • docs
    • setup
    • refactor
  • 커밋 방법

    • '{대분류}: {commit 제목}'의 형태로 첫 라인을 작성한다.
  • 커밋 규칙

    • 최대한 같은 파일을 만지지 않기
    • commit 단위 작게
    • PR도 자주자주

2. Github Rule

Pull Request

  • PR명은 [브랜치명]