DAG总览 / 组目录 / 协作

协作者权限(Collaborator Permission)

G03Layer 4
目录:前置概念账号与仓库版本管理协作项目管理自动化部署工具生态
层导航:L0L1L2L3L4 当前L5L6L7L8
上游 · 理解本功能前需先掌握的(1):
下游 · 依赖/承接本功能的(1):
前置依赖包含从属概念升级流程承接 边方向 = 学习顺序(A→B 表示先学 A 再学 B)

为什么需要它

心智模型

仓库是你的,但项目可能是好几个人的。怎么让队友能改代码、又不能让外人乱动?协作者权限(Collaborator Permission)就是仓库的「门禁卡」:你给谁发卡、发什么级别的卡(只能看 / 能改 / 能管),完全由你说了算。它把「一个人的仓库」变成「一群人的协作现场」。

历史背景 · 它为什么诞生诞生于 2010
诞生GitHub早期只有owner/collaborator两级权限,但企业与大项目需要更细的控制:既想给外部只看代码,又想给成员推送权限而不让其改仓库元数据。2010-06-29 Organizations首次引入团队三级权限(Pull Only / Pull+Push / Pull+Push+Admin)。
演进权限模型持续细粒度化:2010组织团队三级;2018项目权限支持外部协作者;2021 Universe推出自定义仓库角色让企业自定义权限组合;演进至SAML SSO、企业托管用户等身份治理。
历史教训
权限的本质是"信任半径"的量化:协作对象越多,就需要越细的授权粒度。权限系统与组织/团队/企业等治理实体互相成就,是平台从个人工具走向企业产品的必经之路。

功能介绍

协作者权限(Collaborator Permission)是 GitHub 提供给仓库所有者的权限管理机制。作为仓库所有者(owner),你可以把别人添加为协作者(Collaborator),并授予三种级别的权限之一:读取(Read,只能看代码和讨论)、写入(Write,能推分支、提合并、开问题)、管理(Admin,能改仓库设置、管理成员)。这是个人仓库协作的基础——小团队通常直接在仓库 Settings → Collaborators 里添加成员就够了。被添加的人不需要 fork,因为已经有写权限,可以直接建分支(Branch)干活。权限是可以随时回收的,人多手杂时把权限给到最小够用即可(最小权限原则)。等团队变大、仓库变多时,再升级到组织(Organization)用团队(Team)统一管理权限。

核心术语

协作者(Collaborator)仓库所有者(Owner)读取权限(Read)写入权限(Write)管理权限(Admin)

适用场景

怎么操作(网页 vs 命令行 双轨)

🖱️ 网页操作 (GitHub.com)
  • 进入仓库,点击 Settings → Collaborators(左侧菜单)。
  • 在 Add people 输入框里填写对方的 GitHub 用户名或邮箱。
  • 在下拉列表中选择权限级别(Read / Write / Admin),点击 Add 发送邀请。
  • 等对方接受邀请后,即可在仓库里按对应权限操作;移除时点击 Remove。
⌨️ 命令行 (进阶)
  • gh api -X PUT repos/你的账号/仓库名/collaborators/用户名 -f permission=push
  • gh api repos/你的账号/仓库名/collaborators/用户名
  • gh api -X DELETE repos/你的账号/仓库名/collaborators/用户名

新手建议先从网页操作入手,熟悉概念后再尝试命令行。命令行是真实开发中更常用的方式。

与其他功能的关系

关系(前置依赖 / 包含从属 / 概念升级 / 流程承接)说明
前置依赖创建仓库(Create Repository)仓库所有者可添加协作者并授权
概念升级团队(Team)从单个协作者升级到组织内的团队权限管理

官方文档

小结

SUMMARY

协作者权限就是给仓库发不同级别的门禁卡:Read 只能看、Write 能干活、Admin 能管理。小团队加个人,大团队用组织。下一步学团队(Team),看看组织里怎么把权限批量管起来。