반응형
협업을 하다 보면 각자 기능이나 작업을 개인 브랜치에서 개발하고 그 변경 사항들을 모두 통합에 관리하는 develop 브랜치를 사용하는 경우가 많다. 그래서 develop 브랜치의 최신 변경사항을 내 작업 브랜치에 반영(동기화)하는 방법에 대해 알아보자
예시
개인 브랜치 : feature/quest/
devlop 브랜치 : 모든 팀원이 작업을 merge하는 통합 브랜치
왜 develop 브랜치의 최신 내용을 반영해야 하나요?
개인 브랜치에서 작업하던 중 팀원들이 develop에 새로운 기능을 올려버리면 내 브린치는 구 버전으로 작업하게 된다.
이 상태로 작업을 이어가면 나중에 develop에 merge할때 충돌이 발생할 가능성이 높고 버그나 기능 오류로 이어질 수 있다. 따라서 주기적으로 develop 브랜치에 최신 변경 사항을 내 브랜치에 반영하는 것이 중요하다.
하는 방법
01 꼭꼭 현재 브랜치 확인하기
git branch
혹시 다른 브랜치에 있었다면 내 브랜치로 아래와 같이 이동한다.
git checkout feature/quest-ui
2. develop 브랜치 최신 내용 가져오기
git fetch origin
3. develop 브랜치 merge 혹은 rebase
1. Merge
git merge origin/develop
장점 : 기록이 명확하게 남음(Merge commit)
단점 : 기록이 남음
2. Rebase
git rebase origin/develop
장점 : 커밋 로그가 깔끔해짐
단점 : 충돌이 나면 수동으로 해결해야함
만약 이미 Push한 작업은 rebase 후 강제 푸시가 필요할 수도 있음 그러므로 혼자 작업할때만 rebase 쓰는 것을 권장
반응형
'유니티 공부 > GitHub' 카테고리의 다른 글
GitHub - 최근 커밋 수정하기 (amend 사용) (0) | 2024.04.04 |
---|---|
GitHub - The file will have its original line endings in your working directory (0) | 2024.03.18 |
GitHub - LFS(Large File Storage)사용법-100MB이상의 파일을 업로드 하기 (1) | 2024.03.18 |
GitHub - 브랜치(branch) 이용해서 fetch,pull,add, commit, push 해보기 +) branch관련 명령어들 (0) | 2024.03.15 |
GitHub - 로컬 저장소, 원격저장소(git remote명령어들) 추가, 폴더 만들기(mkdir), 경로 변경(cd) (0) | 2024.03.15 |
댓글