깃허브 및 깃랩 역할별 권한
Github Organization
- Owner
조직 전체 관리 (팀, 멤버, 빌링, 레포지터리 권한 등 모든 권한)
- Member
조직에 속한 일반 사용자
기본적으로 아무 레포지터리 접근 권한이 없음
Team에 속해야만 레포지터리에 대한 권한을 부여 받을 수 있으며 팀 내에서 부여받은
GitHub Team
조직을 구성하는 팀
각 팀원들에 대해 역할(Role) 부여 가능
팀 내에서 각 팀원들에 대한 레포지터리 권한 관리 (Read / Write / Maintain / Admin / Triage)
Maintainer (팀 관리 / 팀이 가진 레포지터리 권한 설정 등)
Member (일반 팀 구성원 / 팀에서 할당받은 레포지터리 권한 사용만 가능 / 팀 자체 설정 변경 불가)
GitHub 레포지터리 권한
- Read
코드 읽기, 클론, 이슈 열람 가능
- Triage
이슈, PR 관리가 가능하지만 코드 변경 권한은 없음
- Write
코드 푸시, 브랜치 생성, 이슈/PR 작성 가능
- Admin
레포지터리 전체 관리 (권한 부여, 삭제 등 모든 설정)
Gitlab Project
Git 저장소 + 협업 기능 전체
Git 저장소 / Issue / Merge Request / CI/CD / Wiki / Snippet / Container Registry등이 포함된 단위
- Maintainer
프로젝트 관리자
Developer 권한 및 프로젝트 관리
Protected 브랜치 및 태그 설정
Merge Reuqest 승인 및 병합
CI/CD 설정 변경
Release 태그 관리
- Developer
일반적인 개발자 권한
코드 푸시 (새 브랜치 / 새 커밋)
Merge Request 생성
CI/CD 파이프라인 실행
컨테이너 이미지 빌드 및 푸시
- Reporter
읽기 전용 권한 + 이슈 관리
저장소 Clone
Issue 및 Merge Request 열람
CI/CD Job 로그 확인
아티팩트 다운로드
- Guest
프로젝트 기본 접근자
Issue 작성 및 댓글 달기
Wiki 및 Snippet 작성
CI/CD 파이프라인 실행 보기
GitLab Group
프로젝트를 포함하는 상위 컨테이너. 권한과 설정을 하위 프로젝트에 상속
깃허브의 팀과 달르게 프로젝트의 상위 단위
깃랩의 프로젝트에 설정할 수 있는 역할 및 권한과 동일