Post

5장. 깃허브로 협업하기

서로 다른 컴퓨터에서 원격 저장소 함께 이용하기

원격 저장소 복제하기 – git clone

  • 복제한다(클론 or 클로닝): 원격 저장소를 지역 저장소로 똑같이 가져오는 것.
1
$ git clone 원격 저장소 주소 .

집에 있는 컴퓨터에서 작업하고 올리기

1
2
$ git commit -am "add C"
$ git push

회사 컴퓨터에서 내려받아 작업하기

⭐하나의 원격 저장소에 지역 저장소가 2개 이상 연결되어 있을 때, 지역 저장소에서 작업하려면 원격 저장소의 변경 사항을 먼저 가져와야 한다!

1
2
3
$ git pull(git fetch + git merge origin/main)
$ git commit -am "add d"
$ git push

원격 브랜치 정보 가져오기

원격 저장소의 최신 커밋을 무조건 합치지 않고 원격 브랜치에서 어떤 변화가 있었는지 그 정보만 가져온 후 필요한 커밋만 합칠 수 있음!

커밋과 브랜치 이해하기

  • (Head -> main): 이 커밋이 지역 저장소의 최종 커밋이라는 의미
  • (origin/main): 원격 저장소의 최종 커밋이라는 의미

원격 브랜치 정보 가져오기 – git fetch

  • fetch: 원격 저장소의 정보를 가져옴.
1
2
3
$ git fetch
$ git diff HEAD origin/main
$ git merge origin/main

협업의 기본 알아보기

협업과 브랜치

  • 브랜치: 브랜치란 main 브랜치와 구분짓는 작업을 하기 위해 코드를 분리하는 것(분기)

alt text

협업 과정

1단계: 협업을 위한 저장소를 만듭니다.
2단계: 팀원을 추가합니다(작업할 팀원들을 공동 작업자로 추가)
3단계: 브랜치별로 커밋하고 푸시합니다(풀과 푸시 반복)
4단계: 풀 리퀘스트(main 브랜치에 병합해 달라고 요청)를 요청합니다.
5단계: 코드 리뷰 & 브랜치 병합

alt text

원격 저장소에서 협업하기

협업을 위한 저장소 만들기

  • Readme 파일을 만들면 main 브랜치가 만들어짐.

공동 작업자 추가하기

  1. 팀장이 manual 저장소에서 [Settings]를 클릭
  2. [Collaborators]를 선택한 후 [Add People]을 클릭
  3. 이메일 주소 선택해서 추가

프로젝트 관리하기 – 팀장 역할

  1. 새로운 프로젝트 생성. 여러 메뉴 중 [Profects] 선택. [New Project]를 선택.
  2. ‘프로젝트 보드’라고 하는 프로젝트 관리 도구를 다양하게 지원함. [Featured] 항목에는 자주 사용하는 도구들이 나열되어 있다. 팀 플래닝을 이용할거니 [Team Planning]을 선택
  3. 프로젝트 이름을 입력하고 [Create Project]를 클릭
  4. [Todo]에 있는 [Add item]을 클릭.
  5. 해야할 일 항목 위로 마우스 포인터를 올려놓아 [Convert to issue]를 선택
  6. 이슈를 할당할 저장소를 선택.
  7. 이슈가 등록되었으니 이슈 화면으로 이동. [Open in new tab]을 선택.
  8. 일을 할당함.

브랜치 만들기 – 팀원 역할

  1. 만들어 놓은 저장소로 방문. [Projects]탭을 클릭.
  2. ‘사이트 제작하기’라는 프로젝트를 선택.
  3. [Todo]열에 나열된 작업에는 할당된 작업자의 깃허브 계정이 표시되어 있다. [Open in new tab]을 선택.
  4. [Create a branch]링크 선택
  5. 브랜치 이름 선택 후 [create branch]클릭.

지역 저장소에서 작업하고 푸시하기

  1. ”$ git clone 원격 저장소 주소”를 입력해서 원격 저장소와 연결
  2. VS Code 터미널 창에서 “$ git switch plan”을 입력해 plan 브랜치를 만든 후 전환(깃허브에는 plan 브랜치를 만들었지만 지역 저장소에는 아직 plan 브랜치가 없다.)
  3. plan 브랜치가 새로 만들어지면서 원격 저장소의 plan 브랜치와 연결. 이것을 지역 브랜치와 원격 브랜치를 트래킹(tracking)한다고 한다.
  4. 수정후 커밋하고 푸시!

❗원격 저장소에 없는 브랜치로 푸시하려면?

1
git push -u origin 브랜치명

풀 리퀘스트 요청하기

  1. [main]을 클릭한 후 [plan]을 선택해서 plan 브랜치로 이동
  2. [Compare & pull request]를 클릭
  3. 적을 것 다 적고, [Create pull request]를 클릭

풀 리퀘스트 검토하고 브랜치 병합하기 – 팀장/리뷰어 역할

제대로 작업했다면 main 브랜치로 병합하고, 수정하거나 추가할 부분이 있다면 해당 내용을 기록하고 재작업하도록 할 수 있다.

  1. [Pull requests]탭을 클릭
  2. 진행 중인 풀 리퀘스트는 Open 이라 하고, 처리된 풀 리퀘스트는 Closed 되었다고 한다. 처리할 풀 리퀘스트 제목을 클릭
  3. [Conversation] 탭에는 작업자가 남긴 메시지를 봄. 풀 리퀘스트에 [Open]이라고 현재 상태가 표시.
  4. 현재 커밋을 병합해도 되겠다고 생각한다면 [Conversations]탭에 있는 [Merge pull request]를 클릭.
  5. [confirm merge]를 클릭.
  6. 쓰지 않는 branch를 [Delete branch]를 이용해서 삭제.

⭐나중에 삭제한거 되돌리고 싶다면, 풀 리퀘스트 화면으로 돌아와 [Restore branch]를 클릭해서 되돌릴 수 있다.

This post is licensed under CC BY 4.0 by the author.

Trending Tags