You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitHub公共仓库能否存放私有Action YAML等私有文件?

解答

首先明确结论:你描述的「在公共仓库中存放属于仓库一部分、但仅自己可见的Action YAML文件」的需求无法直接实现。GitHub的公共仓库没有部分文件私有功能,所有提交到公共仓库Git版本控制中的文件(包含全部历史提交版本)都对所有访问者公开,无例外。

你可以通过以下几种方案实现等效的使用需求,不会泄露私有配置:

  • 独立私有仓库托管私有Action
    单独创建一个私有GitHub仓库,专门存放更新容器的工作流配置。公共仓库完成镜像构建并推送至镜像仓库后,通过repository_dispatch事件触发私有仓库的Action执行更新逻辑,两个仓库完全独立,公共仓库侧不会留存任何私有配置。
  • 公开工作流逻辑、敏感参数存入加密Secrets
    你可以把更新容器的Action YAML本身公开,所有需要用到的私有信息(比如服务器SSH密钥、部署地址、镜像仓库认证信息等)全部存入公共仓库的加密Secrets中,工作流运行时直接从Secrets读取参数,不会对外泄露。你还可以给工作流添加执行条件,比如仅你推送特定Tag、或手动触发时才运行该工作流,其他人Fork你的仓库后既无法触发你的更新流程,也看不到你存储的Secrets内容。
  • 搭配GitHub Environment保护规则
    给该更新工作流绑定专属的部署环境,设置仅你自己拥有该环境的访问和执行权限,同时把所有私有参数存储在环境级别的加密Secrets中。就算工作流文件是公开的,没有你的授权该工作流完全无法运行,也不会泄露任何私有信息。

内容的提问来源于stack exchange,提问作者WoJ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 22:27:04