Deploy Public

🚢 安全开源一键发布神器

一键将私有仓库代码同步至公开镜像,智能过滤敏感目录,自动创建合并PR并同步GitHub发布记录,适用于开源项目安全发布流程。

收藏
4.1k
安装
1.4k
版本
1.9.61
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

deploy-public 是一款专为 GitHub 仓库设计的私有化到公开化同步工具,采用 Bash 脚本实现全自动化流程。用户只需执行单条命令 bash scripts/deploy-public.sh /path/to/private-repo org/public-repo,即可完成从代码复制、分支创建、PR 提交、自动合并到 Release 同步的完整发布链路。

显著优点

1. 智能敏感信息过滤:自动排除 ai/.git/ 目录,防止 AI 生成内容或版本历史泄露
2. 标准化发布流程:强制遵循"私有仓库合并 → 创建 Release → 同步至公开仓库"的三段式工作流,避免发布空 Release Notes

3. 零配置开箱即用:依赖仅要求系统预装 gitgh (GitHub CLI) 和 bash,无需额外认证配置

4. PR 自动化管理:自动创建 PR 并使用常规合并(非 Squash),保持提交历史完整性

潜在局限

  • 硬编码路径限制ai/ 目录过滤为固定规则,不支持自定义排除模式
  • 单平台绑定:深度依赖 GitHub CLI (gh),不支持 GitLab、Gitea 等其他 Git 托管平台
  • 无冲突处理机制:若公开仓库存在未同步的独立提交,可能产生合并冲突需手动介入
  • Release 顺序强依赖:必须在私有仓库先执行 wip-release 创建 Release,否则公开仓库 Release Notes 为空

适合人群

  • 维护私有开发版本与公开发行版双轨仓库的开源项目负责人
  • 需要定期将内部迭代成果同步至 GitHub 公开仓库的 DevOps 工程师
  • 对 AI 生成内容(ai/ 目录)有保密需求的 AI 原生开发团队

常规风险提示

  • Token 权限要求gh CLI 需具备 repo 完全读写权限及 workflow 权限
  • 网络中断风险:多步骤流程(clone → commit → push → PR → merge → release-sync)中任一步骤失败需手动清理临时目录
  • 不可逆操作:自动合并 PR 后无法通过工具本身回滚,建议在关键仓库启用分支保护规则

Deploy Public 内容

手动下载zip · 5.7 kB
deploy-public.shtext/x-shellscript
请选择文件