如何为 Go 项目 README 添加 Go Report Card、PkgGoDev 与 Release 徽章?
【免费下载链接】project-layoutStandard Go Project Layout项目地址: https://gitcode.com/GitHub_Trending/pr/project-layout
希望 Go 项目的 README 让读者一眼看到代码检查结果、包文档入口和最新 Release 版本时,project-layout(Standard Go Project Layout)仓库的 README.md 在## Badges一节给出了三类徽章的现成写法:Go Report Card、PkgGoDev 和 Release。下面先确认要替换的“项目引用”,再逐条添加三段徽章 Markdown,最后按文档描述确认徽章的渲染与跳转。
准备:确认要替换的“项目引用”
文档中三组徽章示例都使用github.com/golang-standards/project-layout作为引用,并在 Go Report Card 一条中明确要求:把github.com/golang-standards/project-layout替换为你自己项目的引用("Replacegithub.com/golang-standards/project-layoutwith your project reference")。
这个引用在示例里有两种形式:
- Go Report Card 与 PkgGoDev 的 URL 使用完整模块路径形式,即以
github.com/开头的github.com/golang-standards/project-layout; - Release 的 URL 使用不带域名的
golang-standards/project-layout(即github.com/之后的“组织名/仓库名”部分)。
替换时保持这一差异:前两者换成你自己项目的完整模块路径,后者换成你的组织名/仓库名。仓库的 go.mod 示例中模块路径写作module github.com/YOUR-USER-OR-ORG-NAME/YOUR-REPO-NAME,与 Go Report Card、PkgGoDev 徽章使用的完整模块路径形式一致,可以作为替换目标的参照。
文档 Overview 一节还给出两条相关前提:仓库示例的go.mod默认项目托管在 GitHub 上,但这"not a requirement";模块路径可以是任意值,只是第一级模块路径组件名中应包含一个点,使用较旧版本 Go 时不满足这一点构建可能失败("don't be surprised if your builds fail without it")。
添加 Go Report Card 徽章
文档说明该服务会用gofmt、go vet、gocyclo、golint、ineffassign、license和misspell扫描代码。把下面这段加到 README 中(文档原文示例,两处github.com/golang-standards/project-layout都要替换为你自己项目的引用):
[](https://goreportcard.com/report/github.com/golang-standards/project-layout)项目引用在徽章图片 URL 和跳转链接中各出现一次,两处都要替换;跳转指向goreportcard.com/report/<项目引用>报告页。
添加 PkgGoDev 徽章
文档称 Pkg.go.dev 是 "a new destination for Go discovery & docs",可以用其 badge generation tool(地址https://pkg.go.dev/badge)创建徽章。README 给出的写法如下(两处引用同样替换为你自己项目的引用):
[](https://pkg.go.dev/github.com/golang-standards/project-layout)添加 Release 徽章
文档说明该徽章会显示项目的最新 release 编号,并要求 "Change the github link to point to your project"。示例中的引用是不带github.com前缀的golang-standards/project-layout,图片 URL 与跳转链接两处都要改成你自己项目的 github 链接:
[](https://github.com/golang-standards/project-layout/releases/latest)如何确认徽章已生效
文档没有给出单独的验证命令,成功条件按文档对三枚徽章行为的描述判断:
- 三枚徽章在 README 中按上述 Markdown 渲染为图片;
- Go Report Card 徽章链接指向
goreportcard.com/report/<项目引用>报告页; - PkgGoDev 徽章链接指向
pkg.go.dev/<项目引用>模块文档页; - Release 徽章显示最新 release 编号,链接指向你仓库的
releases/latest页面。
文档中的边界说明
- 同一节还有一个 GoDoc 徽章,但其说明文字在源文档中已被删除线标记,文档同时称 Pkg.go.dev 为新的 Go 发现与文档去处;本文按标题范围不采用 GoDoc 徽章。
- Release 徽章的示例图片 URL 与跳转链接都基于 GitHub 地址(
img.shields.io/github/release/...与github.com/.../releases/latest),按文档要求替换为你自己项目的 github 链接即可。 - 文档只列出了 Go Report Card 使用的扫描工具清单,未给出固定分数或固定输出;替换引用后,徽章内容以各服务页面实际展示为准。
【免费下载链接】project-layoutStandard Go Project Layout项目地址: https://gitcode.com/GitHub_Trending/pr/project-layout
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考