感谢你抽出时间来改进 Certimate!以下是向 Certimate 主仓库提交 PR(Pull Request)时的操作指南。
- Go 1.22+ (用于修改 Go 代码)
- Node 20+ (用于修改 UI)
如果还没有这样做,你可以 fork Certimate 的主仓库,并克隆到本地以便进行修改:
git clone https://github.com/your_username/certimate.git
重要提示: 建议为每个 Bug 修复或新功能创建一个从
main
分支派生的新分支。如果你计划提交多个 PR,请保持不同的改动在独立分支中,以便更容易进行代码审查并最终合并。 保持一个 PR 只实现一个功能。
假设你已经对 Certimate 的 Go 代码做了一些修改,现在你想要运行它:
-
进入根目录
-
运行以下命令启动服务:
go run main.go serve
这将启动一个 Web 服务器,默认运行在 http://localhost:8090
,并使用来自 ui/dist
的预构建管理页面。
在向主仓库提交 PR 之前,建议你:
-
使用 gofumpt 对你的代码进行格式化。
-
为你的改动添加单元测试或集成测试(Certimate 使用 Go 的标准
testing
包)。你可以通过以下命令运行测试(在项目根目录下):go test ./...
Certimate 的管理页面是一个基于 React 和 Vite 构建的单页应用(SPA)。
要启动 Admin UI:
-
进入
ui
项目目录。 -
运行
npm install
安装依赖。 -
启动 Vite 开发服务器:
npm run dev
你可以通过浏览器访问 http://localhost:5173
来查看运行中的管理页面。
由于 Admin UI 只是一个客户端应用,运行时需要 Certimate 的后端服务作为支撑。你可以手动运行 Certimate,或者使用预构建的可执行文件。
所有对 Admin UI 的修改将会自动反映在浏览器中,无需手动刷新页面。
完成修改后,运行以下命令来构建 Admin UI,以便它能被嵌入到 Go 包中:
npm run build
完成所有步骤后,你可以将改动提交 PR 到 Certimate 主仓库。