注意
GitHub Enterprise Server 目前不支持 GitHub 托管的运行器。
关于你存储库的 GitHub Actions 权限
默认情况下,在 GitHub Actions 上启用 GitHub Enterprise Server 之后,它 会在所有存储库和组织上启用。 可以选择禁用 GitHub Actions 或将其限制为企业中的操作 。 有关详细信息 GitHub Actions,请参阅 撰写工作流程。
可以为存储库启用 GitHub Actions 。 启用 GitHub Actions 时,工作流能够运行位于您的存储库或任何其他公共或内部存储库中的操作。 可以完全为存储库禁用 GitHub Actions 。 禁用 GitHub Actions 时,仓库中不会运行任何工作流程。
或者,可以在存储库中启用 GitHub Actions ,但限制工作流可以运行的操作 。
管理 GitHub Actions 存储库的权限
可以为存储库禁用 GitHub Actions ,也可以设置一个策略,用于配置可在存储库中使用的操作 。
注意
如果你的组织设有优先策略,或者你所在的组织由设有优先策略的企业管理,你可能无法管理这些设置。 有关详细信息,请参阅“禁用或限制组织的 GitHub Actions”或“在企业中强制实施GitHub Actions策略”。
-
在 GitHub 上,导航到存储库的主页面。
-
在仓库名称下,单击 “Settings”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

-
在左侧边栏中,单击“ Actions”,然后单击“General”********。
-
在“Actions permissions(操作权限)”下,选择一个选项。
如果选择 允许选择操作____,则允许企业内的操作,并且还有允许其他特定操作的其他选项。 有关详细信息,请参阅允许选择操作来运行。
本地到企业的操作
启用“Require actions to be pinned to a full-length commit SHA”后,**** 所有操作都必须关联到完整长度的提交 SHA 才能使用。 这包括来自企业的操作以及 GitHub 创作的操作。 有关详细信息,请参阅 安全使用指南。
-
单击“ 保存”。
允许选定的操作运行
选择 允许选择操作____时,允许本地操作 ,还有其他选项可用于允许其他特定操作:
注意
如果你的组织设有优先策略,或者你所在的组织由设有优先策略的企业管理,你可能无法管理这些设置。 有关详细信息,请参阅“禁用或限制组织的 GitHub Actions”或“在企业中强制实施GitHub Actions策略”。
-
允许使用由 GitHub 创建的操作: 可允许工作流使用由 GitHub 创建的所有操作。 由GitHub创建的操作位于
actions和github组织中。 有关更多信息,请参阅actions和github组织。 -
**允许经验证的创作者执行 Marketplace 操作:**如果您已启用 GitHub Connect 并将其配置为使用 GitHub Actions,则此选项可用。 有关详细信息,请参阅 使用 GitHub Connect 启用对 GitHub.com操作的自动访问。 可以允许工作流使用由已验证的创建者创建的所有 GitHub Marketplace 操作。 当GitHub已将操作的创建者验证为合作伙伴组织时,该徽章将显示在操作的GitHub Marketplace旁边。
-
允许 或阻止 指定的操作: 可以限制工作流以在特定组织和存储库中使用操作 。 设置时,指定的操作数不能超过 1000。
若要限制对特定标记的访问或提交操作的 SHA,请使用工作流中使用的相同语法来选择操作。
- 对于操作,语法为
OWNER/REPOSITORY@TAG-OR-SHA。 例如,使用actions/[email protected]选择标记或使用actions/javascript-action@a824008085750b8e136effc585c3cd6082bd575f选择 SHA。 有关详细信息,请参阅“在工作流中使用预编写的构建基块”。
可以使用
*通配符来匹配模式。 例如,若要允许名称以space-org开头的组织中的所有操作,可以指定space-org*/*。 若要允许名称以 octocat 开头的仓库中的所有操作,可以使用*/octocat**@*。 有关使用*通配符的更多信息,请参阅 GitHub Actions 的工作流语法。使用
,分隔模式。 例如,若要允许来自octocat和octokit组织的所有操作,您可以指定octocat/*, octokit/*。使用
!前缀来屏蔽模式。 例如,若要允许来自space-org组织的所有操作,但阻止特定操作(如space-org/action),则可以指定space-org/*, !space-org/action@*。 默认情况下,仅允许列表中指定的操作 。 若要允许所有操作 同时阻止特定操作,可以指定*, !space-org/action@*。 - 对于操作,语法为
此过程演示如何将特定操作 添加到列表中。
-
在 GitHub 上,导航到存储库的主页面。
-
在仓库名称下,单击 “Settings”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

-
在左侧边栏中,单击“ Actions”,然后单击“General”********。
-
在“操作权限”下,选择 允许选择操作____ 所需操作并将其添加到列表中。
-
单击“ 保存”。
为专用存储库的分支启用工作流
如果依赖于使用专用存储库的分支,你可以配置策略来控制用户如何在 pull_request 事件上运行工作流。 适用于专用存储库和内部存储库,可以为你的企业、组织或存储库配置这些策略设置。
如果为 企业或 组织禁用策略,则无法为存储库启用该策略。
- 从分支拉取请求运行工作流 - 允许用户使用具有只读权限、没有密码访问权限的
GITHUB_TOKEN,从分支拉取请求运行工作流。 - 从拉取请求向工作流发送写入令牌 - 允许来自分支的拉取请求使用具有写入权限的
GITHUB_TOKEN。 - 从拉取请求向工作流发送机密 - 使所有机密都可用于拉取请求。
- 需要批准拉取请求分支工作流 - 如果工作流在没有写权限的协作者发出的拉取请求上运行,则需要获得具有写权限的人员的批准,然后才能运行。
为专用存储库配置分支策略
-
在 GitHub 上,导航到存储库的主页面。
-
在仓库名称下,单击 “Settings”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

-
在左侧边栏中,单击“ Actions”,然后单击“General”********。
-
在“复刻拉取请求工作流”下,选择选项。
-
单击“保存”以应用设置。
为存储库设置 GITHUB_TOKEN 的权限
您可以设置授予 GITHUB_TOKEN 的默认权限。 有关 GITHUB_TOKEN 的详细信息,请参阅 在工作流中使用 GITHUB_TOKEN 进行身份验证。 你可以选择一组有限的权限作为默认项或应用权限设置。
默认权限也可以在组织设置中配置。 如果你的存储库属于某个组织并且在组织设置中选择了更严格的默认值,则会在存储库设置中自动选择相同的选项,并禁用许可选项。
任何拥有存储库写入权限的人都可以通过编辑工作流文件中的 GITHUB_TOKEN 键来修改授予 permissions 的权限,或者根据需要添加或删除权限。 有关详细信息,请参阅 permissions。
配置默认 GITHUB_TOKEN 权限
默认情况下,当你在个人帐户中创建新仓库时,GITHUB_TOKEN 仅对 contents 和 packages 范围具有读取访问权限。 如果在组织中创建新存储库,则设置继承自组织设置中配置的内容。
-
在 GitHub 上,导航到存储库的主页面。
-
在仓库名称下,单击 “Settings”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

-
在左侧边栏中,单击“ Actions”,然后单击“General”********。
-
在“工作流权限”下,选择是要让
GITHUB_TOKEN对所有权限具有读写访问权限(允许设置),还是仅对contents和packages权限具有读取访问权限(受限设置)。 -
单击“保存”以应用设置。
阻止 GitHub Actions 创建或批准拉取请求
可选择允许或阻止 GitHub Actions 工作流创建或审批拉取请求。
默认情况下,在个人帐户中创建新存储库时,不允许工作流创建或批准拉取请求。 如果在组织中创建新存储库,则设置继承自组织设置中配置的内容。
-
在 GitHub 上,导航到存储库的主页面。
-
在仓库名称下,单击 “Settings”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

-
在左侧边栏中,单击“ Actions”,然后单击“General”********。
-
在“工作流权限”下,使用 Allow GitHub Actions创建和批准拉取请求设置来配置
GITHUB_TOKEN是否可以创建和批准拉取请求。 -
单击“保存”以应用设置。
允许访问内部存储库中的组件
内部存储库中的操作和可重用工作流可以与同一组织或企业中的内部和专用存储库共享。 有关内部存储库的信息,请参阅 关于仓库。
可以使用以下步骤来配置是否可以 从存储库外部访问内部存储库中的操作和 可重用工作流。 有关详细信息,请参阅“与企业共享操作和工作流”。 或者,你可以使用 REST API 来设置或获取访问级别的详细信息。 有关详细信息,请参阅 针对 GitHub Actions 权限的 REST API 端点 和 针对 GitHub Actions 权限的 REST API 端点。
-
打开 GitHub,导航到内部存储库的主页。
-
在存储库名称下,单击“ 设置”。
-
在左侧边栏中,单击“ Actions”,然后单击“General”********。
-
在“访问”下,选择其中一个访问设置:
- 无法访问- 其他存储库中的工作流无法访问此存储库。
- 可从 'ORGANIZATION NAME' 组织中的存储库访问 - 属于 'ORGANIZATION NAME' 组织的其他存储库中的工作流可以访问此存储库中的操作和可重用工作流。 仅允许从专用或内部仓库访问。
- 可从 'ENTERPRISE NAME' 企业中的存储库访问 - 属于 'ENTERPRISE NAME' 企业的其他存储库中的工作流可以访问此存储库中的操作和可重用工作流。 仅允许从专用或内部仓库访问。
-
单击“保存”以应用设置。
允许访问专用存储库中的组件
可以与同一组织或企业拥有的其他专用存储库共享专用存储库中的操作和可重用工作流。 有关专用仓库的详细信息,请参阅 关于仓库。
可以使用以下步骤配置是否可以从存储库外部访问专用存储库中的操作和可重用工作流。 有关详细信息,请参阅 与企业共享操作和工作流。 或者,你可以使用 REST API 来设置或获取访问级别的详细信息。 有关详细信息,请参阅 针对 GitHub Actions 权限的 REST API 端点 和 针对 GitHub Actions 权限的 REST API 端点。
- 打开 GitHub,导航到专用存储库的主页。
- 在存储库名称下,单击“ 设置”。
- 在左侧边栏中,单击“ Actions”,然后单击“General”********。
- 在“访问”下,选择其中一个访问设置:
- 无法访问- 其他存储库中的工作流无法访问此存储库。
- 可从 'ORGANIZATION NAME' 组织中的存储库访问 - 属于 'ORGANIZATION NAME' 组织的其他存储库中的工作流可以访问此存储库中的操作和可重用工作流。 仅允许从专用存储库访问。
- 可从 'ENTERPRISE NAME' 企业中的存储库访问 - 属于 'ENTERPRISE NAME' 企业的其他存储库中的工作流可以访问此存储库中的操作和可重用工作流。 仅允许从专用存储库访问。
- 单击“保存”以应用设置。
配置存储库中 GitHub Actions 工件和日志的保留期
您可以为仓库中的 GitHub Actions 构件和日志配置保留期限。
默认情况下,工作流程生成的构件和日志文件将保留 90 天,然后自动删除。 可以将此保持期更改为 1 天或 400 天之间的任何时长。
自定义保留期时,它仅适用于新构件和日志文件,并且不追溯性地应用于现有对象。 对于托管的仓库和组织,最长保留期不能超过管理组织或企业设置的限制。
您还可以为工作流程创建的特定构件自定义保留期。 有关详细信息,请参阅“删除工作流程构件”。
为存储库设置项目和日志保留期
-
在 GitHub 上,导航到存储库的主页面。
-
在仓库名称下,单击 “Settings”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

-
在左侧边栏中,单击“ Actions”,然后单击“General”********。
-
在“项目、日志和缓存设置”部分中,在“项目和日志保留”下,输入一个新值****。
-
单击“保存”应用更改****。
为存储库配置缓存存储
默认情况下,GitHub Actions 在 GitHub 的外部存储上使用的总缓存存储限制为每个存储库最多 10 GB,可以为存储库设置的最大允许大小为 25 GB。 但是,如果企业所有者更改了这些默认大小,则这些默认大小可能有所不同。 如果超过此限制,GitHub 将保存新缓存,但会开始收回缓存,直到总大小小于存储库限制。
可以将仓库的总缓存存储大小设置为组织或企业策略设置允许的最大大小。
-
在 GitHub 上,导航到存储库的主页面。
-
在仓库名称下,单击 “Settings”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

-
在左侧边栏中,单击“ Actions”,然后单击“General”********。
-
在“缓存大小限制”下,输入新值。
-
单击“保存”应用更改****。