본문 바로가기
etc./🌱git

[git merge] develop 브랜치 내용을 현재 브랜치에 반영하기

by yewoneeee 2024. 7. 16.

노션에 작성해둔 글을 블로그로 옮겨쓰는 중

 

현재 팀 프로젝트는 git-flow를 사용중이다

 

git-flow에 대해 궁금하다면 아래 블로그를 참고!

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

 

우린 Git-flow를 사용하고 있어요 | 우아한형제들 기술블로그

안녕하세요. 우아한형제들 배민프론트개발팀에서 안드로이드 앱 개발을 하고 있는 나동호입니다. 오늘은 저희 안드로이드 파트에서 사용하고 있는 Git 브랜치 전략을 소개하려고 합니다. ‘배

techblog.woowahan.com

 

대략적으로 요약하면 크게 master, develop, feature 브랜치가 있는데 feature에서 기능을 완성해서 develop에 병합시키고, 큰 버전이 하나 생기면 master에 병합해서 배포하고 버전을 관리하는 식이다.

즉, 여러 명이 같이 작업하는 프로젝트에서는 담당하는 기능 별로 feature 브랜치를 만들고, 완성이 되면 develop에 병합시키는 식이다.

이렇게 되면 feature를 develop에 병합할 때 충돌이 발생하는 경우도 있고, develop에 있는 내용을 현재 내 feature 브랜치에 반영해야 하는 경우도 있다.

이럴 때 사용하면 좋은 것이 git merge이다.

 

방법


1. 현재 브랜치를 커밋해서 변경 사항을 저장함

git add .
git commit -m "commit message!"

 

변경 사항을 유지하기 위해 커밋하는 것임!

 

2. develop 브랜치의 최신 변경 사항을 로컬로 가져옴

git checkout develop
git pull origin develop

 

3. 현재 내 브랜치로 다시 이동함

git checkout [내 로컬 브랜치]

develop의 내용을 반영하고 싶은 브랜치를 말하는 것!

 

4. develop 브랜치의 내용을 현재 브랜치에 병합함

git merge develop

 

 

5. 병합 과정에서 충돌이 발생했을 경우, 충돌이 발생한 파일에서 충돌을 해결

conflict 확인이 terminal에서는 힘들어서, 안드로이드 스튜디오의 Git > resolve conflict 를 사용

 

6. 변경된 내용을 커밋

git add .
git commit -m "commit message!"

병합한 후에 develop의 내용들, 충돌 해결 과정에서 변경된 파일 등을 다시 커밋하는 과정

 

7. 원격에 push

git push origin [내 원격 브랜치]

원격 브랜치로 push함!

나는 로컬 브랜치명과 원격 브랜치 명이 같아서 그대로 사용했지만, 두 브랜치 명이 다르다면 각각에 맞게 작성해 줘야함

 

 

'etc. > 🌱git' 카테고리의 다른 글

Git gui fork 오류 해결 방법  (0) 2024.07.19
[git stash] 변경사항 일시적으로 저장하기  (0) 2024.07.16
[git fetch] 코드 리뷰하기  (0) 2024.07.16

댓글