本页目录

如何在 GitHub 创建并开源第一个项目?README、License、Release 教程

适用范围
已有一个本地项目文件夹,准备通过 GitHub 网页或 GitHub CLI 创建首个公开仓库的新手
信息来源
木子不写代码 GitHub 零基础教程、GitHub Docs、Git 文档与 GitHub CLI 手册

在 GitHub 开源第一个项目,完整流程是:整理项目文件,写 README,选择 LICENSE,检查密钥和隐私,初始化 Git 并提交,再创建公开仓库、推送 main,最后打 Tag 和发布 Release。不要跳过公开前的敏感信息检查。

本地项目经过文档、许可证、安全检查、提交、发布和维护的完整流程

第一步:整理项目目录

先确认项目在本地可以运行,并删除不应进入仓库的临时文件。常见基础结构:

PROJECT_NAME/
├─ README.md
├─ LICENSE
├─ .gitignore
├─ src/
├─ tests/
└─ docs/

.gitignore 用于排除依赖、缓存、构建产物和本地配置。例如:

.env
.env.*
node_modules/
dist/
*.log

已经被 Git 跟踪的文件不会因为后来加入 .gitignore 就自动从历史中消失,所以应在第一次提交前完成检查。

第二步:写清 README

README 是仓库首页的说明书,至少回答:

  1. 项目解决什么问题;
  2. 有哪些主要功能;
  3. 环境要求和安装步骤;
  4. 最小可运行示例;
  5. 输入、输出和配置位置;
  6. 当前限制与已知问题;
  7. 许可证和贡献方式。

截图要展示真实功能,不要只放概念图。命令应经过实际执行,并标明是在 PowerShell、终端还是特定目录运行。

第三步:选择 LICENSE

希望降低复用门槛时,常见起点是 MIT 或 Apache-2.0;希望衍生作品继续开放时,需要进一步评估 MPL、LGPL、GPL 或 AGPL。

许可证不是装饰文件。选择前先阅读 MIT、Apache、GPL 等 7 种许可证对比,并确认依赖许可证是否兼容。

第四步:执行公开前安全检查

逐项搜索:

  • API Key、Token、密码、私钥和 Cookie;
  • .env、数据库、日志和测试账号;
  • 姓名、邮箱、聊天记录和业务数据;
  • 本地绝对路径和内网地址;
  • 无权公开的字体、图片、视频、数据集和第三方代码;
  • 大型构建文件和无意义缓存。

第五步:初始化 Git 并完成第一次提交

在项目根目录执行:

git --version
git init -b main
git add .
git status
git commit -m "Initial commit"

git status 是关键检查点。确认暂存区只有计划公开的文件,再执行 Commit。

第六步:创建 GitHub 仓库并推送

安装 GitHub CLI 后登录:

gh auth login

在浏览器完成授权,再从项目根目录创建公开仓库:

gh repo create PROJECT_NAME --public --source=. --remote=origin --push

PROJECT_NAME 换成实际仓库名。执行成功后,检查 GitHub 页面上的文件、README、LICENSE 和默认分支是否正确。

也可以先在 GitHub 网页创建空仓库,再按页面提示添加远程并推送。不要同时让网页生成 README,而本地又有不同 README,否则第一次推送前需要处理两套历史。

第七步:发布第一个 Release

早期可用版本常从 v0.1.0 开始:

git tag -a v0.1.0 -m "First public release"
git push origin v0.1.0
gh release create v0.1.0 --generate-notes

发布说明应写明功能、安装方法、破坏性变化、已知限制和升级方式。应用软件可以附安装包;脚本、Skill 或库也可以只发布源码包和使用说明。

第八步:维护 Issue 和 Pull Request

公开项目上线后,需要建立最低限度的维护流程:

  • 用 Issue 收集可复现的问题和需求;
  • 提供 Issue 模板,要求系统、版本、步骤和日志;
  • 用 Pull Request 审查贡献,不直接接受来源不明的大块修改;
  • 开启自动测试和依赖更新;
  • 为默认分支设置保护规则;
  • 用 Release 和更新日志说明版本变化。

Branch、Pull Request 和 Tag 的关系可参考 GitHub 工作原理图解。如果需要从找项目开始重新梳理,回到 GitHub 零基础入门完整教程

使用边界:发布前必须确认自己拥有代码和素材的公开权利,并清除密钥、个人数据、绝对路径、构建产物与不应公开的文件。

常见问题

创建 GitHub 仓库前必须安装 Git 吗?

只用网页上传少量文件时不是必须;要保留本地版本历史、持续推送和协作,建议安装 Git。使用 gh 命令还需要 GitHub CLI。

README 应该写哪些内容?

至少写清项目解决的问题、主要功能、安装步骤、最小示例、配置要求、许可证和获得帮助的方式。

第一次发布应该用什么版本号?

仍处于早期但已有可用功能时,常从 v0.1.0 开始;是否稳定以及版本规则应在 README 或发布说明中明确。