共计 2427 个字符,预计需要花费 7 分钟才能阅读完成。
很早前写过一篇对于 Golang 继续集成服务之 Travis 教程, 明天再写写对于 github 上常见的徽章是如何制作的. 让你的开源我的项目更高大上, 让你的代码也更强壮.
徽章的含意
当你浏览一个开源我的项目时, 看到各种徽章, 有些徽章是间接反馈这个开源库的品质和完整性等等.
如上图所示
- 第一个徽章即 Github 自带的 workflow 提供的继续集成 (CI) 和继续部署(CD), 官网称之为 Actions, 图示显示为 CI, CD 是否通过
- 第二个徽章即 Codecov 是一个测试后果剖析工具, 图标显示测试覆盖率.
- 第三个徽章即 shields.io 一个能够自定义徽章的网站
- 第四个徽章即 goreportcard 是一个我的项目综合评分网站
- 第五个徽章即 gitter 自定义讨论组的网站
CI&CD 徽章
github 于 2018. 10 月举荐 GitHub Actions 继续集成服务, 在此之前大家都是应用 https://travis-ci.org/ 继续集成服务, 之前我也写过相干文章. Golang 继续集成服务之 Travis 教程.
继续集成和继续部署目前 github 官网自带反对, 官网称之为 GitHub Actions.
只有你在 github 上创立一个开源我的项目仓库就自带 Actions 性能, 反对各种语言. 还能够主动公布 GitHub Pages 等性能, 非常弱小.
如何应用能够参考阮一峰写的 GitHub Actions 入门教程
对于 GO 的继续集成服务模板参考:
应用 GitHub Actions 后会在你的我的项目里自带生成一个
.github
文件夹, 即.github/workflows/go.yml
name: Go # 应用语言 | |
on: # 监听动作 | |
push: # 监听 push 动作 | |
branches: [main] # 监听哪个分支 branch | |
pull_request: | |
branches: [main] | |
jobs: # 工作 job | |
build: # 构建动作 | |
runs-on: ubuntu-latest # 基于 ubuntu 零碎 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Go | |
uses: actions/setup-go@v2 | |
with: | |
go-version: 1.15 | |
- name: Build # 构建我的项目 | |
run: go build -v ./... | |
- name: Test # 运行用例 | |
run: go test -v . |
徽章的制作.
https://github.com/yezihack/e/workflows/Go/badge.svg
https://github.com/yezihack/e
是我的项目的地址workflows/Go/badge.svg
两头的Go
是 https://github.com/yezihack/e… 下的名称. 须要留神辨别大小写
测试覆盖率 徽章
登陆官网 https://codecov.io/ 应用 GitHub 帐号登陆, 受权导出你的我的项目.
在我的项目的根目录新建.travis.yml
文件
实例文件参考
language: go # 应用语言. | |
go: | |
- 1.15.6 # 版本号, 反对多种版本号 | |
sudo: required # #有定制化开发环境须要,默认 false,不开启容器,编译效率高 | |
os: # 应用的操作系统 | |
- linux | |
- osx | |
notifications: # 邮箱告诉 | |
email: freeit@126.com | |
go_import_path: # 应用 Go 须要导入的包. | |
- github.com/gin-gonic/gin | |
- github.com/pkg/errors | |
- github.com/smartystreets/goconvey | |
before_install: # 次要装置一些零碎依赖, | |
- go mod tidy | |
install: true # 装置, true 跳过 | |
script: # 脚本执行. | |
- echo "run" | |
- go test -race -coverprofile=coverage.txt -covermode=atomic | |
- go test -v ./... | |
after_success: # 上传测试报告 | |
- bash <(curl -s https://codecov.io/bash) |
徽章制作
点击 Settings -> Badge
文档徽章
https://pkg.go.dev/ 只针对 Golang 语言主动生成文档
关上网站间接输出你我的项目的拜访地址, 自带生成.
如 https://github.com/yezihack/e
文档地址即: https://pkg.go.dev/github.com…
徽章制作
https://img.shields.io/badge/go.dev-reference-brightgreen?logo=go&logoColor=white&style=flat
[](https://pkg.go.dev/github.com/yezihack/e)
综合报告徽章
关上 https://goreportcard.com/ 间接填写你的我的项目拜访地址即可.
徽章制作
https://goreportcard.com/badge/github.com/yezihack/e
讨论组徽章
关上 https://gitter.im/ 注册, 创立一个小组, 能够邀请开发者一起探讨.
创立小组时最好以你的用户名 + 仓库名 命名. 这样不便辨认.
徽章制作
获取你的讨论组的地址, 而后在 https://shields.io/category/chat 抉择 Gitter 即可. 填写你的用户名和仓库名信息

其它徽章
关上 https://shields.io 能够自定义很多共性的图标, 让你的我的项目更业余.