팀원 협업 방법

김강민·2024년 8월 18일
0

개발

목록 보기
9/16

0. 사전준비

새롭게 프로젝트를 시작하게 되면서 팀원들과 어느정도 규칙을 만들어서 진행하고 싶어서 만들어 보았다.
미리 말하자면 지금 소개하는 방식은 Frontend 프로젝트에서 사용했었고, IDE의 경우 VSCode를 주로 사용했음을 밝힌다.

먼저 local repository와 remote repository를 연결시켜야한다.

0-1. Remote Repository를 먼저 만들었을 때

git clone <repository adress>

0-2. Local Repository를 먼저 만들었을 때

작업중인 폴더를 Local Repository로 지정합니다.

git init

Remote repository를 생성하고, Local Repositroy와 연결합니다.

git remote add origin <repository address>

1. 이슈 작성

주의사항
이슈 작성 전에 프로젝트 생성시 issue template과 pull requests template를 추가해주세요!
Template 모음

본인이 작업할 부분에 대해 작성한다.

Issue 작성 예시


Assignees 에 본인 이름을 넣고, Labels 에 대략적인 작업 내용을 표시합니다.
Labels 의 아래에 존재하는 Projects 를 활용하는 방법도 존재하지만, 추후 팀원들과 협의 후에 결정하는 것을 추천합니다!

Projects 사용 예시

2. 브랜치 생성

2-1. 이슈에서 브랜치 생성

이슈의 우측 Development의 Create a branch 를 클릭한다.

2-2. Branch 이름 작성


브랜치 이름의 경우 아래와 같은 방법으로 작성합니다.

1. 이슈가 기능구현 이슈일 경우

Feat/issue-#{ issue-number }

작성 예시 : Feat/issue-#74

2. 이슈가 기능수정 이슈일 경우

Fix/issue-#{ issue-number }

작성 예시 : Fix/issue-#74

2-3. 명령어 입력

정상적으로 브랜치가 생성되었다면 아래 사진처럼 나타납니다.

git fetch origin : origin 이라는 remote의 branch를 local에서 가져옵니다. (remote branch update)

git checkout { branch name } : 해당 remote 브랜치로 이동합니다.

개인적으로 저는 checkout 보다는 switch 를 더 자주 사용합니다.

git switch { branch name } : 해당 브랜치 (local / remote) 로 이동합니다.

3.PR 요청

⭐️ PR 요청 시 base 브랜치가 올바른지 꼭 확인하세요!


본인이 해당 브랜치에서 작업한 내용들을 작성합니다.

만약 버그가 발생하였거나 참고사항이 존재한다면 이 부분도 작성합니다.

오른쪽에 AssigneesLabels 도 추가합니다.

Git Close 부분에는 closes #{issue-number} 를 작성하여 연결된 이슈를 merge시 자동으로 닫습니다.

작성 예시 : closes #85

3-1. merge 규칙

PR 요청시 branch merge 규칙은 추후 팀원간의 협의가 필요합니다.

  1. 충돌이 없을 경우 바로 merge를 허용할 것인가?
  2. 팀원들의 review가 존재해야 merge를 허용할 것인가?

3-2. merge 형태

merge 형태 또한 추후 팀원간의 협의가 필요합니다.

  1. 일반적인 merge로 진행할 것인가?
  2. Squash merge로 진행할 것인가?

4. 브랜치 삭제

⭐️ 한번 삭제한 브랜치는 되도록이면 다시 살려내지 않는 것을 추천합니다!
추가적으로 수정사항이 발생할 경우 새롭게 이슈를 작성하고, 새로운 브랜치를 생성하여 작업합니다.

정상적으로 merge가 되었다면 해당 브랜치는 이제 사용하지 않으므로 삭제합니다.

4-1. remote 에서 branch 삭제


Delete branch 를 눌러서 remote에서 해당 브랜치를 삭제합니다.

4-2. local에서 branch 삭제

git branch -D { your branch }
profile
인생은 프레임워크처럼, 공부는 라이브러리처럼

0개의 댓글

관련 채용 정보