03.1.Github 공유 권한 - yojulab/learn_DevOps GitHub Wiki

비교 요약

구분 Public Private (사용자) Private (Token)
접근 대상 누구나 초대된 계정 토큰 보유자
인증 필요 없음 GitHub 로그인 토큰
주요 용도 오픈소스 팀 협업 CI/CD, 자동화
권한 제어 불가 계정 단위 Scope 단위

1. Public 저장소

누구나 접근 가능한 오픈 공유 방식.

  • 저장소 생성 시 Public 선택
  • URL만 있으면 누구나 클론·열람 가능
  • 오픈소스 프로젝트, 포트폴리오에 적합
  • Issues, Pull Request, Star 등 커뮤니티 기능 활용 가능
git clone https://github.com/username/repo.git

2. Private 저장소

접근 권한을 직접 제어하는 방식.

2-1. 공유 사용자 설정 (Collaborator)

특정 GitHub 계정에 직접 접근 권한 부여.

  1. 저장소 → SettingsCollaborators
  2. Add people 클릭 후 상대방 GitHub 아이디 입력
  3. 상대방이 초대 수락 시 접근 가능
권한 설명
Read 열람·클론만 가능
Write 코드 푸시 가능
Admin 설정 변경 포함 전체 권한

조직(Organization) 저장소는 Teams 단위로 일괄 권한 관리 가능.


2-2. API Key 방식 (Personal Access Token)

GitHub 계정 비밀번호 대신 토큰으로 인증하는 방식.

토큰 발급

  1. GitHub → SettingsDeveloper settings
  2. Personal access tokensTokens (classic) 또는 Fine-grained tokens
  3. 필요한 권한(scope) 선택 후 토큰 생성

주요 권한(Scope)

Scope 용도
repo Private 저장소 전체 접근
read:org 조직 정보 읽기
workflow GitHub Actions 제어

사용 방법

# 클론 시 토큰 삽입
git clone https://<TOKEN>@github.com/username/repo.git

# 또는 Git Credential 설정
git config --global credential.helper store
# URL: https://username:<TOKEN>@github.com

Fine-grained Token 사용을 권장 — 저장소·권한을 세밀하게 제한 가능.


⚠️ **GitHub.com Fallback** ⚠️