章节 ▾ 第二版

6.4 GitHub - 管理组织

管理组织

除了单人用户账户外,GitHub 还有所谓的“组织”(Organizations)。与个人账户类似,组织账户拥有一个命名空间,用于存放其所有项目,但在其他许多方面则有所不同。这些账户代表了一群共同拥有项目的群体,并且提供了许多工具来管理这些群体中的子组。通常,这些账户用于开源团体(例如 “perl” 或 “rails”)或公司(例如 “google” 或 “twitter”)。

组织基础

创建组织非常简单;只需点击任意 GitHub 页面右上角的 “+” 图标,然后从菜单中选择 “New organization”(新建组织)即可。

The “New organization” menu item
图 125. “New organization” 菜单项

首先,你需要为组织命名,并提供一个用于团队联络的电子邮箱地址。如果愿意,你还可以邀请其他用户成为该账户的共同所有者。

按照这些步骤操作,很快你就能成为一个全新组织的拥有者。和个人账户一样,如果该组织计划存储的所有内容都是开源的,那么它是免费的。

作为组织的拥有者,当你派生(fork)一个仓库时,可以选择将其派生到你的组织命名空间下。当你创建新仓库时,既可以创建在你的个人账户下,也可以创建在你作为拥有者的任何组织下。同时,你也会自动 “关注”(watch)这些组织下创建的任何新仓库。

就像在 你的头像 一节中提到的一样,你可以为你的组织上传头像,进行个性化设置。同样与个人账户类似,你拥有一个组织着陆页,其中列出了你所有的仓库,并可供他人查看。

现在,让我们来了解一些组织账户中略有不同的地方。

团队(Teams)

组织通过“团队”与个人相关联,团队本质上是组织内个人用户账户和仓库的集合,并定义了这些人对这些仓库拥有的访问权限。

例如,假设你的公司有三个仓库:frontendbackenddeployscripts。你希望 HTML/CSS/JavaScript 开发人员能够访问 frontendbackend,而运维人员能够访问 backenddeployscripts。使用团队功能可以轻松实现这一点,而无需单独管理每个仓库的协作者。

组织页面显示了一个简单的仪表板,列出了该组织下的所有仓库、用户和团队。

The Organization page
图 126. 组织页面

要管理团队,你可以点击 组织页面 右侧边栏的 “Teams”。这将带你进入一个页面,你可以使用它向团队添加成员、向团队添加仓库,或管理团队的设置和访问控制级别。每个团队对仓库都可以拥有只读、读写或管理权限。你可以通过点击 团队页面 中的 “Settings”(设置)按钮来更改权限级别。

The Team page
图 127. 团队页面

当你邀请某人加入团队时,他们会收到一封通知邮件,告知他们已被邀请。

此外,团队 @mention(例如 @acmecorp/frontend)的使用方式与个人用户大致相同,不同之处在于,团队中的**所有**成员都会订阅该讨论串。如果你需要团队中某人的关注,但又不确定具体该询问谁时,这个功能非常有用。

一个用户可以属于任意数量的团队,因此不要将自己局限于仅创建访问控制团队。兴趣小组团队,如 uxcssrefactoring,对于特定类型的问题很有用;而其他团队,如 legalcolorblind,则有完全不同的用途。

审计日志(Audit Log)

组织还允许拥有者查看组织内部发生的所有活动信息。你可以进入 “Audit Log”(审计日志)标签页,查看组织层面上发生的事件、执行者是谁以及操作地点。

The Audit log
图 128. 审计日志

你还可以针对特定类型的事件、特定地点或特定人员进行筛选。