git-flow

OwlSuri·2022년 5월 6일
0

git

목록 보기
3/5


출처:https://techblog.woowahan.com/2553/

git branch하면 master인지 main인지 나옴

develop 브랜치로 넘어가려면

git checkout -b develop

feature branch

feature branch 기능브랜치를 나눔
게시판 등록, 결제페이지 등등

feature branch에서 하고 develop에서 합침
하다가 버그있는 것들은 합치는것 거부

develop

여러사람이 만든 것을 develop에서 합쳐서 하나의 프로젝트로 만듦

release branch

그전에 release branch(버그잡는 용도)를 두는데, 배포해도 되는 커밋을 decelop에서 release로 옮김, 여기선 기능추가하지않고 버그만 잡음 -> 여기서 합치면서 생기는 버그를 잡고 여기서 다 통과되면 master에 합침

master branch

master branch를 배포
만약 여기서 버그상황이 또 발생하면 hotfix branch로 이동하여 수정

master branch에서 hotfixes로 이동

git checkout -b hotfixes

다른데서 이동하는 것과는 다르다.
다른것들은 브랜치가 새로 만들어지면서 이동되는 것은 동일하나
어디서 체크아웃을 했느냐에따라 달라지는데, 디폴트가 폴더에다가 추가하거나 업데이트 하는데
master에서 하는 것은 체크아웃 파일과 폴더들 위에서 추가되거나 삭제되거나 함.

어디서 branch를 땄느냐가 중요하다.

repository를 만드는 방식


PR을 merge Request라고도 함

리뷰, 테스트해서 이상없는 코드는 합침

develop branch가 update됨

회사레파지토리(develop)를 pull 받고 develop에서 다시 branch를 따서 작업함

회사레파지토리는 upstring
철수 레파지토리는 origin

git push origin master 는 내 레파지토리에 깃하는 것이고
git push upstream master는 회사(권한없을수있음)

git pull upstresam develop 해야 회사레파지토리에 있는 것 pull 가능

* 주의사항

겹치는 파일이 생기면, merge 할때 파일이 기존것에서 update 해야할때 충돌이 일어난다. 그러므로
1. 중복되지않는(겹치지 않는) 기능을 만들어야 한다.
2. 잘하는 사람이 공통모듈 만들기(내부에서 사용하는 라이브러리 만드는 것 - 여러사람에게 어떻게 영향이 될지 생각하면서 만들어야함) ex) 로그인 - 잘못만들면 다른 기능 하나도 못씀
3. merge되지 않은 상태에서 독립적이지 않은 것 이용해서 만들면 안됨(ex. 게시판 등록하고 merge 되지 않은 상태에서 수정 만드는 것 - 등록에서 문제생길 수 있으므로)

실습

issue

깃허브 issue 부분에서 오늘 할 일 적음

이 번호로 feature branch 만들어도 좋음

git chechout -b 

-b가 있으면 없는 branch 만들어서 이동

git checkout -b 'feature-#10'

으로 만들어서 작업하고

git add .
git commit -m "message"
git push origin feature-#10

하고 깃허브에 가서 레퍼지토리에 들어가면

PR 생김 -> develop으로 PR 날리면 됨

upstream 만들기

회사계정만 merge 권한이 있음
merge한 파일을 pull

git pull upstream main

main이 최신버전인 상태에서 여기서 작업해야할 것 새로 feature-# 만들어서 해야함

profile
기억이 안되면, 기록을 -

0개의 댓글