본문 바로가기
Git

GitHub 브랜치로 협업

by Hyeon_E 2023. 1. 29.

원격저장소 브랜치 만드는 방법

많은 사람들이 똑같은 파일에 git push할려고 하면 대참사가 일어날 수 있음

이런 경우 개발자마다 branch를 만들어 branch에서 개발을 한 다음 main branch에 merge하는게 안정적

 

github사이트에서 직접 브랜치 생성

main 브랜치명 버튼을 누르면 브랜치를 바꾸거나 새로만들 수 있음

 

로컬 repository에서 브랜치 생성

 

git push 원격저장소주소 로컬브랜치명

 

로컬 브랜치를 원격에 올리기

 

git push 원격저장소주소 로컬브랜치명 하면 특정 로컬저장소 브랜치 → 원격저장소

git push 원격저장소주소 하면 모든 로컬저장소 브랜치 → 원격저장소

 

main branch와 합치기

GitHub는 pull request라는 기능이 있음. merge request하라는 뜻

pull request를 하면 branch를 merge해달라는 요청을 할 수 있고 팀원끼리 merge전에 코드검토가 가능함

 

협업 branch, main branc와 합치기

  1. 해당 repository에 Pull requests에 들어가 New pull request 초록버튼을 누르면 pull request생성이 가능함
  2. 상단에 어떤 브랜치를 어디에 합칠것인지 선택하고 하단에서 commit내역, 변경내역을 잘 보고 초록버튼을 누르면 pull request가 열림(Pull requests메뉴에서 확인가능)
  3. Pull requests메뉴에서 코드를 리뷰
  4. merge 하기로 하면 Merge pull request 초록버튼을 눌러 옵션중 원하는 것을 택함 

Merge pull request 옵션

  • Create merge commit
    • 새로운 merge commit을 하나 생성해주는 3-way merge를 실행
    • main 브랜치 조회시 합쳐진 브랜치의 commit 내역도 전부 나옴
    • 터미널에 git log --oneline --graph 해보면 합쳐진 브랜치도 그림으로 나옴
    • commit 내역이 많으면 복잡해질 수 있음
  • Squash and merge 
    • 합쳐질 브랜치의 commit 내역을 하나로 합쳐서 main 브랜치에 신규 commit을 생성
    • git log --oneline --graph 해보면 합쳐진 브랜치 안나옴 
    • commit을 하나로 합쳐서 main branch로 이동시켜주는 행위여서 깔끔
  • Reabase and merge
    • 합쳐질 브랜치를 main 브랜치 최신 commit으로 rebase하고나서 fast-forward merge 비슷한걸 해줌
    • 결과는 squash and merge와 비슷한데 합쳐질 브랜치의 commit 내역이 전부 보존
    • git log --oneline --graph 해보면 합쳐진 브랜치 안나옴
  1.  

 

 

'Git' 카테고리의 다른 글

GitHub 타인과 협업  (0) 2023.01.29
GitHub 사용법  (0) 2023.01.28
문제가 생겨 원래코드로 돌아가고 싶을때(git revert, reset, restore)  (0) 2023.01.28
Git에서 branch 만들기  (0) 2023.01.27
Git 설치와 add, commit, diff  (0) 2023.01.27

댓글