협업 준비위한 세팅 방법을 기록

사전 준비

1. 레포지토리 생성

2. local - remote 설정

1
2
3
4
5
6
7
echo "# step3" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/zzoe2346/step3.git
git push -u origin main

3. 팀원 초대

3-1 settings -> collaborators 진입

3-2 Add people 버튼클릭해서 팀원 초대

3-3 팀원이 초대를 수락

4. 브랜치, 머지 등 전략 설정

협업할 레포지토리의 settings -> Branches 탭으로 main 브랜치를 핵심으로 설정 할 것임

4-1 Add classic branch protection rule 클릭

4-2 다음과 같이 설정함

머지 전에 무조건 PR을 날리도록 설정. 최소 2명의 팀원에게 Approve받아야 merge 되도록 설정

같이 협의 할 사항

  • 머지를 위한 최소 approve 개수
  • tag, 템플릿등
  • issue convention
    • 이슈 템플릿
    • 이슈 생성 전략

        1. 기능 요구 사항 모두 다 같이 확실히 한 다음 각자 할 일 배분후 이슈 한꺼번에 할당 받기
      
        1. 각자가 다 알아서 이슈 만들고 기능 요구 사항 판단하고 하기
  • 프로젝트 관리나 진행상황 한번에 볼 수 있는 Github Project, Jira
    • 이슈와 쉽게 연동이 되는 Github Project가 더 적절하다고 개인적으로 생각

이슈(issue) 생성 후 팀원에게 주기

1. 레포지토리 상단 이슈 탭

2. New 로 이슈 생성

Get stated 클릭(미리 연습삼아 설정해둔 issue template 이용)

여기서 이슈 추가 누르면! 이슈가 추가됩니다. 그리고 아래와 같이 이 이슈 담당할 사람을 정해주고 하면(testAccount442가 팀원이라고 가정)

이렇게 이슈가 생성됩니다. 이제 팀원 관점에서gogo

Github Projects vs Jira

By ChatGPT

GitHub Projects와 Jira는 둘 다 프로젝트 관리 도구이지만, 기능과 사용 목적에 따라 서로 다릅니다. 아래는 두 도구의 주요 차이점입니다.

1. 기본 개요

  • GitHub Projects: GitHub의 리포지토리 내에서 사용할 수 있는 간단한 프로젝트 관리 도구입니다. 이 도구는 Kanban 보드 스타일로 작업을 관리하며, GitHub Issues, Pull Requests와 통합되어 개발 워크플로우에 밀접하게 연계됩니다.
  • Jira: Atlassian에서 개발한 고급 프로젝트 관리 도구로, 소프트웨어 개발뿐만 아니라 다양한 유형의 프로젝트를 관리하는 데 사용됩니다. 스크럼, 칸반, 워터폴 등 다양한 애자일 방식에 최적화되어 있으며, 복잡한 워크플로우와 이슈 추적 기능을 제공합니다.

2. 기능

  • GitHub Projects:
    • Kanban 보드: 이슈 및 PR을 카드로 구성하여 작업을 시각적으로 관리할 수 있습니다.
    • 깃허브 통합: GitHub의 이슈, PR과 바로 연결되어 있어 개발 프로세스에서 바로 작업을 관리할 수 있습니다.
    • 단순함: 기능이 단순하여 빠르게 설정하고 사용하기 쉽습니다.
    • 제한된 기능: 복잡한 프로젝트 관리에는 한계가 있으며, 고급 보고서나 대시보드 기능이 부족합니다.
  • Jira:
    • 강력한 워크플로우: 복잡한 워크플로우를 구성할 수 있으며, 다양한 이슈 유형과 상태를 관리할 수 있습니다.
    • 애자일 지원: 스크럼 및 칸반 보드, 백로그 관리, 스프린트 플래닝 등을 지원합니다.
    • 보고서 및 분석: 다양한 보고서와 대시보드를 통해 프로젝트 상태를 분석하고 추적할 수 있습니다.
    • 확장성: 플러그인과 통합을 통해 다양한 기능을 추가하고, 커스터마이징할 수 있습니다.
    • 복잡함: 기능이 많아 설정 및 사용이 복잡할 수 있으며, 사용자가 적응하는 데 시간이 걸릴 수 있습니다.

3. 사용 사례

  • GitHub Projects:
    • 소규모 팀이나 단순한 프로젝트 관리에 적합합니다.
    • GitHub 리포지토리와 밀접하게 연관된 개발 프로젝트에 적합합니다.
    • 복잡한 설정 없이 간단한 작업 관리를 원하는 팀에게 적합합니다.
  • Jira:
    • 대규모 팀이나 복잡한 프로젝트를 관리하는 데 적합합니다.
    • 다양한 팀 간의 협업, 종합적인 프로젝트 관리가 필요한 경우 사용됩니다.
    • 고급 워크플로우, 보고서, 추적 기능이 필요한 팀에게 적합합니다.

4. 비용

  • GitHub Projects: GitHub의 리포지토리와 함께 기본적으로 제공되며, GitHub 플랜에 따라 추가 비용 없이 사용할 수 있습니다.
  • Jira: Jira는 유료 도구로, 사용량과 기능에 따라 다양한 요금제가 제공됩니다. 무료 플랜도 있지만 제한된 기능을 제공합니다.

결론

GitHub Projects는 간단한 프로젝트 관리에 적합하며, GitHub와 밀접하게 통합된 환경에서 간편하게 사용할 수 있습니다. 반면 Jira는 복잡하고 대규모의 프로젝트 관리를 지원하며, 다양한 팀과 협업이 필요한 경우 적합합니다. 선택은 팀의 요구 사항, 프로젝트 복잡도, 그리고 사용자의 경험에 따라 결정됩니다.