[Github] 협업하기

Hyeri·2021년 2월 17일
0

8월에 티스토리에 썼던 내용 옮긴 것임.

항상 혼자서만 github를 사용하다가 2020년 여름, 학교 현장실습 인턴을 하면서 github로 협업을 하게 되었다!
처음에 다들 엄청 헤맸는데 이젠 쫌 잘 쓸 수 있다~~ 룰루~~

기본 개념은,

  1. 새로운 브랜치를 만들고 이를 remote에도 적용
  2. 자신의 브랜치에서 작업을 하고
    add, commit, push(master말고 remote에도 적용시킨 자기 branch에)
  3. master에 반영을 하고 싶을 때는 pull request -> merge
    여기서 tip은 github 레포에서 PR하기 전에, 먼저 로컬에서 pull을 해서(commit까지 한 후에) conflict 발생한 것을 vscode와 같은 IDE에서 변경하는 것이 좋다. github 홈페이지에서 conflict발생을 해결하려면 잘못 수정할 수 있기 때문이다.

도움이 될 git 명령어

1. 리모트 브랜치 생성 및 로컬로 가져오기

  1. 리모트(깃허브 웹 레포지토리)에서 브랜치 만들기
git checkout -b 브랜치명
git push --set-upstream origin 브랜치명   # remote에 만들면서 연결시키기
  1. 로컬로 가져오기
git remote update   #git remote 정보 가져오기
git branch -r   # git remote branch 확인
git checkout -t origin/브랜치명   # git remote branch를 local로 가져오기

2. 브랜치 전환 간 사용시 편리한 명령어

브랜치 간 이동시 변경사항이 있을시 변경 불가. stash 명령어를 사용하여 변경사항 일시저장

  1. 브랜치 전환 전
git stash   # 변경사항 일시 저장
git checkout 이동할브랜치   # 브랜치 이동
  1. 작업 완료 후에 원래의 브랜치로 이동 후
git checkout 원래브랜치
git stash apply   # stash된 목록 중 마지막 상태 불러오기

3. 브랜치 관리

  1. master로의 merge는 기능 개발이 완료 되었을 때, 혹은 팀원들이 요청 했을 때 한다.
  2. 브랜치 이름은 작업내용/작업기능을 한눈에 알아 볼 수 있도록 한다.
  3. merge가 되었으며 더 이상 작업하지 않을 브랜치는 삭제한다. (삭제 전 팀원에게 확인 필요)

4. merge

  1. 기능 개발이 완료 되었으며 merge할 준비가 끝났으면 github 레포에서 pull request를 한다.
  2. 팀원 확인 및 승인 이후 로컬에서
git checkout 개발브랜치   # 개발 브랜치로 이동
git merge 다른브랜치   # 개발 브랜치로 다른 브랜치(master 등)의 내용을 가져옴
  1. conflict 발생 시 vscode 등에서 conflict 발생한 부분 처리 후 다시 merge 진행
  2. merge 완료 후 remote branch로 push
profile
아무거나 내가 적고 싶은거 🤟

0개의 댓글