관련 문서 링크 모음
설명에 앞서 관련한 문서는 다음과 같습니다.
git stash와 git stash pop
git stash와 git stash pop
Git 내부 구조와 관계
깃 내부 구조와 관계🔗
Git과 GitHub란 내용 추가
Git과 GitHub란?
깃허브에서 토큰 발급받는 방법
깃허브에서 토큰 발급받는 방법
이슈&PR 템플릿 만들기
GitHub ISSUE와 PR 템플릿🔗
깃허브 Organization 만들기
GitHub 협업 가이드: Organization과 Repository 관리
이 문서는 팀 프로젝트에서 GitHub의 Projects, Issues, Branches 기능을 연동하여 각 작업을 효율적으로 관리하는 방법을 안내합니다.
흐름은 로컬 프로젝트 생성 → 리포지토리 생성 → 팀원 초대 → 깃허브 프로젝트 생성 → 이슈 생성 → 브랜치 생성 → 로컬 개발 시작 순서로 진행합니다.
GitHub 협업을 시작하는 방법에 크게 두 가지가 있습니다.
- Organization 기반: GitHub 조직을 먼저 만들고, 그 안에서 레포와 프로젝트를 생성해 시작하는 방식
- 개인 레포 기반: 팀장이 개인 계정에서 레포와 프로젝트를 만들고 팀원을 초대해 시작하는 방식
용어 설명
- Organization(조직)
- GitHub에서 회사나 단체를 대표하는 공식 계정
- 여러 Repository와 Team을 하위에 둘 수 있음
- 회사를 설립한 것으로 비유할 수 있음
- Team
- Organization 내부에서 역할/권한별로 구성하는 그룹
- 팀별로 특정 Repository에 대한 권한을 부여할 수 있음
- 회사 안의 개발팀, 인사팀 같은 부서로 비유할 수 있음
- Repository
- 프로젝트의 코드와 문서를 저장하고 관리하는 공간
- Git 저장소를 기반으로 하고, 코드/이슈/PR 등을 포함함
- 부서별/업무별 프로젝트 문서함으로 비유할 수 있음(정확히는 프로젝트별 코드 저장소)
- Project
- GitHub Projects 기능(칸반 보드, 일정 관리)
- Issue, PR을 보드 형태로 관리 가능
- 회의실 칠판이나 달력에 주요 업무/일정을 정리하는 것으로 비유할 수 있음
- Issue
- 해야 할 작업(Task), 버그 보고, 개선 제안 등 작업 단위
- 실제로 이슈 하나가 기능 하나인 경우가 일반적이며, 경우에 따라 버그 수정이나 문서화 요청 등의 작업이 될 수 있음
- 로그인 기능 구현, 헤더 구현, 회원가입 버그 수정 같은 구체적인 업무 하나
- Branch
- 저장소의 코드 원본(main)에서 분리된 독립 작업 공간
- 여러 사람이 동시에 작업할 수 있음 (원본에 영향 없음)
- 작업이 끝나면 Pull Request(PR)로 원본에 합칠 수 있음
- 원본을 건드리지 않고 복사하여 복사본으로 안전하게 작업하는 개인 작업 공간으로 비유할 수 있음
- 설명에 앞서 필요한 선수지식
- 깃과 깃허브의 개념과 사용 이유
- Git
- 로컬(내 PC)에 설치해서 사용하는 분산 버전 관리 도구(DVCS)
- 코드의 변경 사항을 스냅샷처럼 찍어 기록
- 혼자서도 버전 관리 가능
- 카메라로 비유할 수 있으며 카메라로 사진을 찍듯이 코드 상태를 기록해 두는 것
- GitHub
- Git으로 만든 스냅샷(커밋들)을 클라우드 서버에 올려 저장하는 공간
- 여러 사람이 같은 프로젝트를 보며 협업할 수 있게 하는 플랫폼
- PR, 이슈, 리뷰, 권한 관리 등 협업 기능 제공
- 내 앨범(스냅샷 모음)을 인터넷에 올려 친구들과 함께 보는 것으로 비유할 수 있음
- Git 설치 방법과 기본적인 GitHub 사용법, Git 명령어를 알고 있다는 가정 하에 진행
- Git 기본 명령어 예시:
git init : 현재 폴더를 Git 저장소로 초기화
git clone <url> : 원격 저장소를 내 컴퓨터로 복제
git add <파일> : 변경된 파일을 스테이징 영역에 추가
git commit -m "메시지" : 스냅샷(버전) 기록을 남김
git push : 로컬 변경 내용을 원격 저장소로 업로드
git pull : 원격 저장소의 최신 내용을 가져와 로컬과 병합
- GitHub 기본 사용법:
- 원격 저장소(repository) 생성 및 clone
- push/pull을 통한 코드 동기화
- Issues, Pull Request, Projects 등 협업 기능 활용

- 프로젝트 생성 (로컬)
- 로컬 IDE(IntelliJ, VSCode 등)에서 새 프로젝트 생성
- 기본 파일 준비
README.md: 프로젝트 개요와 실행 방법 등
.gitignore: 불필요한 파일 제외


- 리포지토리 생성 및 팀원 초대
- Repositories → New (새 리포지토리 생성)
- 이름, 설명, 공개 여부(Private/Public) 등 설정
- 필요한 경우
README.md, .gitignore등 추가
- Invite Collaborators 선택 또는 Settings → Collaborators에서 팀원 초대
- 깃허브에서 토큰 발급받는 방법





-
로컬 프로젝트와 깃허브 연결
- IDE 터미널에서 명령어 실행


-
GitHub 프로젝트 생성
> Projects는 작업 관리 보드입니다.
> Repo 단위에서 생성하거나, 독립 프로젝트를 생성한 뒤 Link로 연결할 수 있습니다.
특정 레포만을 위한 프로젝트를 생성하기 위해서는 레포 단위에서 프로젝트를 생성해야 합니다.
1. 레포지토리 상단 → **Projects** 클릭
2. **New project** 선택 → 템플릿 선택
3. Settings → Manage access에서 팀원 권한 설정
- Admin: 관리(초대/삭제, 보드 수정)
- Write: 작업 추가/이동 (권장)
- Read: 보기만 가능







-
팀원이 프로젝트 접속
- Collaborator 초대 수락 후, 생성자가 공유한 프로젝트 링크로 직접 접속해야 함
- 생성된 프로젝트 선택 → Todo / In Progress / Done 보드 확인
- Add item → Create issue로 작업 단위 추가 가능



- 이슈 생성
- 프로젝트 보드 → Add item → Create new issue
- 이슈 템플릿 사용 가능 - 이슈 템플릿 생성 방법🔗
- 이슈 작성 시:
- 제목: 간단한 작업 설명 (예: 회원 등록 기능)
- 본문: 작업 세부 내용, 조건, TODO
- Assignee: 담당자 지정
- Label: feature / bug / docs 등 분류 (이슈의 성격 - 기능 추가, 버그 수정 등)




- 브랜치 생성 및 연결
- 이슈 화면 → Create a branch 클릭
- 브랜치 네이밍 규칙 예시:
- feature/login
- fix/loan-bug
- GitHub가 안내하는 명령어를 복사해 로컬에서 브랜치 생성





- 깃허브 Organization 사용 시
GitHub 협업 가이드: Organization과 Repository 관리