[git] git flow

  • master → develop → feature, hot fix, release
  • master: master에 변경내역있다면 production에 배포되는 것
  • develop: hotfix 제외하고는 모든 변경내역은 develop에서 시작
  • feature: develop에서 생성하고, 기능 완성되면 develop에 merge
  • release: develop에서 생성하고, master나 develop에 merge
  • hotfix: master에서 생성하고, master와 develop에 merge

  • 순서

    1. 로컬 저장소 생성
    2. README.md 생성(master에 무언가 push하고, master-devleop-feature로 가기 위해 이용)
    3. git init
    4. git add, commit
    5. git remote add origin & git push origin master
    6. git checkout -b develop → 작업

  • feature에서 작업 중이고, develop에서 push되었고 feature에서 필요한데 pull하지 않은 코드가 있다면?

    • stash → develop으로 이동 → git pull. 즉 feature에서 develop을 pull하지 않는다.

  • upstream, downstream, origin

    • 내가 어떤 레포를 pull하면 그 레포가 upstream, 내 레포가 downstream. 상대적
    • 한 레포(original repo)를 clone하면 default remote가 origin. 즉 내 레포가 origin. original repo를 추적하려면 ‘git remote add upstream 주소’ 로 추가해야함

  • HEAD

    • 현재 작업중인 브랜치를 가리킴. master에서 작업 중이면 head는 master에 있고, feature에서 작업중이면 head는 feature에 있다.
    • ‘git reflog’로 확인 가능


출처


Written by
Sunmin
어제보다 나은 오늘을 만들기 위해 배우고, 기록하고, 회고합니다. Maker. Reader. Realistic optimist.