github私有仓库开发,公开仓库发布版本

文章目录

github私有仓库开发,公开仓库发布版本

需求背景

github私有仓库开发,公开仓库发布版本,既可以保护源代码,又可以发布版本给用户使用。许多知名软件项目都采用了这样的开发模式。

实现思路

总体思路是开发和发布分离。

GitHub Releases

官方文档: https://docs.github.com/en/repositories/releasing-projects-on-github/about-releases

中文:https://docs.github.com/zh/repositories/releasing-projects-on-github/about-releases

GitHub 中有一个 Releases 的概念,其实与 tag 差不多,简单理解就是在打一个 tag 的基础之上,用 releases 来进行管理。

GitHub 的 releases 是 2013 年发布的新功用,旨在帮忙软件开发者分发新版别给用户。

如果开发者需要发布软件或者应用程序,可以使用GitHub Releases来实现。GitHub Releases是GitHub提供的一项功能,可以将代码打包成软件包,并发布到GitHub上。开发者可以在GitHub上创建一个新的Release,并上传软件包到Release中。GitHub会自动将软件包标记为发布状态,并提供下载链接。

您可以创建包装软件的版本,以及发行说明和二进制文件的链接,供其他人使用。

发行版基于用于标记存储库历史记录中的特定点的 git tags。

点击 Create a new release (制定一个新的release)

  • 为你的release输入一个版本名称,版本是基于 git tags 。
  • 上传你的二进制文件。

具体步骤

  1. 创建两个仓库:一个私有仓库(比如myapp-dev),一个公开仓库(myapp-release)
  2. 开发时全部在私有仓库myapp-dev上进行,包括新功能开发、bug修复等。
  3. 开发完成后,在私有仓库上打标签发布版本:
bash 复制代码
git tag -a v0.0.1 -m "release version"
  1. 只把标签和对应的提交对象推送到公开仓库myapp-release:
bash 复制代码
git push origin v0.0.1

在公开仓库页面中,点击"Releases"选项卡,然后点击"Create a new release"按钮。

选择你刚创建tag,标题、描述等信息,并上传需要发布的文件。

  1. 在公开仓库myapp-release只会看到发布的标签,不包含代码历史记录。
  2. 用户可以通过公开仓库下载您发布的版本。

广告

这里给自己项目打个广告,求star,项目地址:https://github.com/shepf/httpcat-release

🚀HttpCat 概述

HttpCat 是一个基于go实现的 HTTP 的文件传输服务,旨在提供简单、高效、稳定的文件上传和下载功能。

项目目标:一个可靠、高效、易用的HTTP文件传输瑞士军刀,它将大大提高你的文件传输控制力和体验。 无论是临时分享还是批量传输文件,HttpCat都将是你的优秀助手。

💥功能特点

简单易用

无需外部依赖,易于移植

相关推荐
A小码哥4 小时前
github上 160K star 的 superpowers 插件使用经验与场景总结
github
Hommy884 小时前
【开源剪映小助手】视频生成流程
开源·github·音视频·剪映小助手
OpenTiny社区7 小时前
生成式UI,AI交互的下一个十年?OpenTiny在QCon 2026的深度分享
前端·开源·github
存在X8 小时前
前端自动化编译Jenkins
前端·github
逛逛GitHub8 小时前
Kimi 2.6 来了!一次性发了 5 个王炸,还有一个 Agent 版微信?
github
Hical_W12 小时前
C++ 也能优雅写 Web?5 分钟用 Hical 搭建 REST API
开发语言·c++·github
CoderJia程序员甲12 小时前
GitHub 热榜项目 - 日榜(2026-04-20)
ai·大模型·llm·github·ai教程
Java后端的Ai之路13 小时前
SSH配置与GitHub项目拉取操作指南
elasticsearch·ssh·github·公钥
纪伊路上盛名在13 小时前
如何跨设备访问我们VSCode中GitHub Copilot 的聊天记录?
vscode·github·copilot·工作流
第一程序员1 天前
数据工程 pipelines 实践
python·github