Git, Github

브랜치 생성 및 협업하기

김꼬알 2023. 7. 7. 18:28

브랜치 만들기

git branch 폴더명

 

 

생성한 브랜치로 이동하기

git checkout 이동할 폴더명

 

 

버전 합치기

git merge 파일명
  • 합치기 전에 base가 될 브랜치로 이동한 후에 merge 해야 함

 

 

 

충돌(conflict) 해결하기

  • 서로 다른 버전을 합쳤을 때 기능이 중복된 다른 코드가 있다면 충돌이 생길 수 있음

  • 두 가지 코드를 확인 후 직접 코드를 수정한 다음 다시 commit 해줌

 

 

브랜치 vs 포크

  브랜치 포크
의미 하나의 원본 저장소에서 분기를 나눔 여러 원격 저장소를 만들어 분기를 나눔
편리한 점 하나의 원본 저장소에서 코드 커밋 이력을 편하게 볼 수 있음 원본 저장소에 영향을 미치지 않으므로 마음껏 코드 수정 가능
불편한 점 다수의 사용자가 다수의 브랜치를 만들면 관리하기 어려움 원본 저장소의 이력을 보려면 따로 주소를 추가해야 함

 

 

저장소 통째로 복제하기

  • 저장하고 싶은 Repository 오른쪽 상단에 fork 버튼을 클릭하면 내 Github에 복제됨
  • 포크한 저장소를 내 컴퓨터에 클론하기
git clone http://github.com/아이디/폴더명.git .

 

 

풀 리퀘스트로 머지 요청 보내기

  • 머지하고 싶은 Repository 에서 Pull request를 클릭
  • 두 브랜치를 선택하고 어떤 변경을 했는지 제목과 내용에 작성한 다음 보내기

 

  • 코드를 함께 작성하는 팀원이 있는 경우, 최대한 직접 머지하는 건 피하고 모든 머지를 풀 리퀘스트를 통해서 하기
  • 동료가 내 풀 리퀘스트(PR)를 보고 코드를 리뷰할 수 있음
  • 동료의 PR에 수정이 필요하면 댓글을 달아 change request를 보낼 수 있음
  • 오픈 소스에 PR을 보낼 때는 contribution guideline을 반드시 참고해야 함

 

 

브랜치 관리하기

  • 보통 feat/기능이름 으로 한 사람이 개발하는 기능 브랜치를 생성(혹은 fix/버그이름, hotfix/급한버그)
  • 작업이 끝나면 dev(혹은 master, main) 브랜치로 PR을 보냄
  • dev 브랜치에서 큼지막한 작업이 모두 머지되면 release(혹은 latest) 브랜치로 머지시키고 이를 실서버에 배포
  • 직접 커밋은 feat(혹은 fix, hotfix) 브랜치에서만 하기
  • dev나 master, release 브랜치에는 직접 커밋하지 말고 머지만 하기

'Git, Github' 카테고리의 다른 글

초기 세팅 및 파일 올리기, 내려 받기  (0) 2023.07.07