plugproxy 在 v1.0 前允许直接推进 main,但正式版本发布必须打 tag。当前稳定版本是 v0.5.1。
go test ./...
go test -cover ./...
go build -o bin/plugproxy ./cmd/plugproxy本地验证版本注入:
$commit = git rev-parse --short HEAD
$date = (Get-Date).ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ssZ")
go build -ldflags "-X main.version=v0.5.1 -X main.commit=$commit -X main.date=$date" -o bin\plugproxy.exe ./cmd/plugproxy
bin\plugproxy.exe version期望输出类似:
v0.5.1 commit=abcdef0 date=2026-05-07T00:00:00Z
先确认 main 已推送并且工作区干净:
git status --short --branch
git push origin main创建 annotated tag 并推送:
git tag -a v0.5.1 -m "v0.5.1"
git push origin v0.5.1推送 tag 后,GitHub Actions 会运行 Release workflow,构建并发布以下产物:
plugproxy_v0.5.1_windows_amd64.zipplugproxy_v0.5.1_windows_arm64.zipplugproxy_v0.5.1_linux_amd64.tar.gzplugproxy_v0.5.1_linux_arm64.tar.gzplugproxy_v0.5.1_darwin_amd64.tar.gzplugproxy_v0.5.1_darwin_arm64.tar.gzchecksums.txt
查看 release:
gh release view v0.5.1 --web
gh run list --workflow Release如果 tag 推错且 Release 尚未被用户使用,可以删除远端 tag 和 release 后重发:
gh release delete v0.5.1 --cleanup-tag
git tag -d v0.5.1如果 release 已经被外部使用,不要重写同名 tag,应发布下一个补丁版本,例如 v0.5.2。