개발 도구 (Development Tools)/Git

깃허브(GitHub)로 협업하기

BiCute 2022. 4. 6. 10:00
반응형

 

깃허브를 통하여 여러사람이 협업(또는 집과 회사 등 둘 이상의 공간에서 작업)하는 경우에 사용하는 방식입니다.

 

 

#1 공동 작업자 초대하기

  대표(또는 팀장)은 협업할 팀원을 공동 작업자로 추가할 수 있습니다.

  setting > collaborators로 이동한 후 add people을 선택하고 해당 팀원의 깃허브 유저명 또는 이메일 주소를 통해 초대장을 발송할 수 있습니다.

 

 

#2 소스 코드 다운받기

  일단 작업을 이어서 진행하기 위해선 깃허브(GitHub)에 올라와 있는 소스 코드를 내 컴퓨터로 내려 받아야 합니다.

  ① 소스를 다운받아 작업을 할 폴더를 만들고 ② 비주얼 스튜디오 코드에서 해당 폴더를 열어줍니다.

  ③ 해당 폴더를 연 상태에서 터미널을 실행 시키면 터미널 창에 해당 폴더에 들어와 있는지 확인해 줍니다.

  (이 과정은 git bash나 터미널 등에서 cd 명령어를 통해 직접 해당 위치로 이동해도 상관없습니다)

폴더 확인

 

  해당 폴더로 들어왔다면 다음 명령을 통해 깃허브에 업로드 되어 있는 소스를 다운 받을 수 있습니다.

git clone 주소 작업폴더

  소스코드를 다운받는 주소는 깃허브에서 초록색으로 표시된 Code를 눌러보면 확인할 수 있으며,

  뒤에 작업 폴더를 적어주는것은 해당 폴더에 다운 받겠다는 명령어 입니다. 이 부분은 선택 사항으로 입력하지 않아도 상관없습니다.

  *기본적으로 프로젝트 이름으로 폴더가 생성됩니다.

 

혼자서 깃허브에 처음 연결할때와는 다르게 클론명령을 통해 저장소를 복제하게 되면 자동으로 로컬 저장소와 깃허브의 원격 저장소가 연결이 됩니다.

  확인은 이전과 동일하게 git remote -v 명령으로 할 수 있습니다.

 

 

#3 새로운 브랜치 만들기

  협업을 할경우 각자의 작업물이 Master 브랜치에 있는 문서들과 섞이지 않도록 새로운 브랜치를 만들어 작업하며 버전을 관리합니다.

  새로운 브랜치를 만드는 명령은 다음과 같습니다.

git checkout -b 브랜치이름

  브랜치 이름은 해당 기능 또는 자신의 닉네임 등 설정은 자유입니다.

  아래 이미지는 위에서 클론으로 소스를 다운 받은 후,

  index.html에 새로운 내용을 추가하고 style.css 파일을 새롭게 생성한 상태입니다.

  탐색기를 보면 새롭게 생성된 파일은 U 마크가, 수정사항이 있는 파일에는 M 마크가 표시되어 있습니다.

windows라는 이름의 브랜치를 생성.

 

 

#4 소스코드 올리기

  작업한 소스코드를 올리는 방법은 혼자 하던 방법과 동일합니다.

  아래와 같은 3단계를 거쳐 파일이 깃허브에 업로드 되는데,

  주의할점은 협업 시에는 마지막 push를 적을때 버릇처럼 master 를 쓰면 안됩니다. 위에서 생성한 브랜치명을 넣어줍니다.

git add .
git commit -m "남길 메세지"
git push origin 브랜치이름

 

*Tip

[Rejected] error : failed to push 어구 저쩌구 에러가 발생하고 푸쉬가 안될경우가 있는데, 자신의 커밋을 푸쉬하기 전에 원격 저장소의 최신 커밋을 가져와야 합니다. 

마스터 브랜치에서 최신 소스를 가져오기 위해서는 다음 명령을 사용합니다.

git pull origin master

 

 

#5 이후의 깃허브 내에서의 흐름

  새로운 파일이 업로드 되었다면 관리자는 새로운 리퀘스트가 와있다는 알람을 확인할 수 있습니다.

  Comprare & pull request 버튼을 눌러 다음 페이지로 이동합니다.

 

  해당 페이지의 아래쪽에서 기존의 페이지와 새롭게 업데이트된 페이지의 내용을 바로 확인할 수 있습니다.

 

  관리자의 확인 후 새로운 요청사항과 함께 반려될 수도, 승인이 될 수도 있습니다.

 

  승인 되었다면 관리자는 Merge pull request 버튼을 이용하여 업데이트 내용을 master(최종 결과물)과 병합할 수 있습니다. 

  (프로젝트의 규모가 커지면 커질수록 매우 신중하게 눌러야 하는 버튼입니다)

 

작업물을 합치게 되어 더이상 이 브랜치가 필요 없다면 바로 삭제할 수도 있습니다.

 

  최종적으로 2개의 작업물이 모두 합쳐진 것을 볼 수 있습니다.

 

 

< 추가 참고사항 >

  (1) 위에서 관리자가 확인후 병합한다고 작성하였지만, 풀 리퀘스트는 공동 작업자 누구든 확인 후 병합 가능합니다. 

  단, 회사에서 신입이 멋대로 저거 건들면 아주 난리가 날 수 있기에...조심하시기 바랍니다.

  공동 작업자 중 누가 브랜치를 병합했는지도 기록으로 다 남습니다.

 

  (2) 깃허브로 공동 작업을 할 때에는 다른 작업자의 내용을 바로 반영하기 위해 항상 풀(pull) 부터 한 다음 작업을 하는것이 좋습니다. 

 

  (3) 브랜치를 이동하는 명령은 다음과 같습니다.

git checkout 브렌치이름
반응형