3 분 소요


1. Git으로 협업하기

1.1 협력자(collaborator) 등록하기

① Github 레포지토리 → Settings → Collaborators → Add people클릭 레포지토리 만든 사람이 해야한다. (팀장)


② 팀원들의 username혹은 email로 추가 => 초대 수락해야 한다.


1.2 git clone

Github 레포지토리의 코드를 복사해오려면 git clone을 하면 된다.


① Github 레포지토리에서 github 주소를 복사한다.


② 코드를 작성할 폴더를 만들어 준 후, vs code에서 해당 폴더를 열어준다.

git clone <github 주소> .명령어를 입력해준다.
뒤에 점(.)빼먹지 말기! → 폴더가 안에 또 생성된다. (경로가 달라짐)


1.3 코드 변경하기(팀원)

그냥 똑같이 진행하면 된다.

  1. git add .
  2. git commit -m "커밋 메세지"
  3. git push origin branch이름


1.4 git pull

다른 사람이 변경한 코드 가져오려면 git pull을 하면 된다.

  • 다른 사람이 이미 git push하고 내가 git push 하려고 하면 발생하는 에러 → git pull 먼저 하면 된다.


  • git pull시 아래와 같은 경고문이 뜬다면?



    ① 터미널에 git config pull.rebase false 명령어 입력 후

    git pull origin main 명령어 입력



2. 브랜치 활용하기

2.1 브랜치 생성 및 이동

① 브랜치(복사본) 생성 명령어

git branch 브랜치이름


② 브랜치 확인 명령어

git branch


③ 브랜치 이동 명령어

git checkout 브랜치이름

혹은

git switch 브랜치이름  /* 주로사용 */


④ 브랜치 한 번에 생성 & 이동

git checkout -b 브랜치이름

혹은

git switch -c 브랜치이름


2.2 브랜치 이동 후 코드 작성

똑같이 git add . > git commit -m "커밋 메세지"


2.3 브랜치를 main에 합치기

최종 브랜치로 이동 후, 합칠 브랜치 이름을 써주면 된다.

git switch 최종 브랜치 이름

git merge 합칠브랜치이름



3. Pull Request 활용하기📌

3.2 Pull Request 사용

⚠️ 협업할 때 git merge 잘 안쓴다고 한다!!
터미널 말고 github에서 합치는 경우가 많다.


Github에서 합치는 이유는? → 코드 리뷰를 하기 위해서!


Github에서도 어떻게 merge가 가능할까? → Pull Request(PR) 사용!

pull: 당겨서 합치는 것(merge) + Request: 요청하다 => 합치는 것을 요청하다.


① 자신이 작업중인 브랜치에서 git push origin 브랜치명 후 github에 업로드한다.

② 그 후 Github로 이동하고 “Compare & pull request” 버튼을 눌러준다.


③ “Create pull request” 버튼을 누르면 request가 생성된다.


④ 생성된 request는 Pull request 탭에서 확인할 수 있다.
Merge 버튼을 누르면 최종 브랜치에 합쳐진다.


⑤ Merge 결과


⑥ Merge 후 git checkout 브랜치명으로 로컬 main브랜치로 이동한다음, git pull origin 브랜치명을 하면 내 로컬에도 github 코드가 반영이 되는 것을 확인할 수 있다!


3.3 정리

  1. 브랜치 생성 및 이동
  2. 기능 개발 및 코드 저장
  3. 코드 업로드 및 Pull request 생성
  4. Github에서 merge
  5. 내 로컬에도 반영 (ex)git pull origin main



4. 협업 실전 가이드

4.1 협업시 팀장 가이드

① 초기 세팅

초기 코드 작성 및 github 업로드

  1. 폴더 생성
  2. 초기 코드 작성 git init, add, commit
  3. Github 레포지토리 생성
  4. Github 초기 코드 업로드 (git push)


② dev 브랜치 생성

개발용 브랜치 develop(dev)를 생성해서 배포 전(main 브랜치에 합치기 전) 테스트를 해서 충돌 여부 등을 확인하는 것이 좋다.

  • main 브랜치: 배포용
  • dev 브랜치: 테스트용
  • 기능 브랜치: 기능 개발용


dev 브랜치 생성 후 push 하면 Github에도 반영이 된다.

git switch­ -c dev // 로컬에서 dev브랜치 생성
git push origin dev // Github에도 반영


③ Github에서 dev브랜치를 default로 설정

pull request의 base 브랜치를 dev로 설정하여 팀원들이 clone을 할 때 dev 브랜치를 clone하게 할 수 있다.


④ 팀원들을 collaborator로 등록


4.2 협업시 팀원 가이드

git clone으로 코드 복제

VS code로 폴더 연 후 git clone 주소 .


② 코드 수정 및 저장 후 코드 업로드

코드 업로드 안될 땐 git pull 진행 후 git push


4.3 기능 개발 시작

  1. 기능 브랜치 생성 및 기능 개발
  2. Pull request 생성
  3. 코드 작성자: 리뷰 요청하기



  4. 코드 리뷰어: 리뷰하기



  5. merge 전(합치기 전) 내 로컬에서 충돌 해결 및 테스트 기능 브랜치에서 git pull origin dev
    pull 후 아래와 같이 충돌이 발생한다면 <<< HEAD,===,>>> 이런것 지우고 push 하면 다시 Github에서 marge 버튼이 활성화 될 것이다!



  6. Github에서 marge하기


4.4 추가 기능 개발

  1. 내 로컬의 dev에도 변경 사항 반영
    • dev브랜치로 이동 (git check out dev 혹은 git switch dev)
    • 그 후 git pull origin dev

  2. 다음 기능 개발
    • 기능 브랜치 생성 및 코드 작성
    • add, commit, push
    • Pull request생성 및 코드 리뷰
    • 내 로컬에서 충돌 해결 및 테스트
    • 코드 업로드 및 merge


4.5 정리


태그:

카테고리:

업데이트:

댓글남기기