如何在 README 里面添加徽章


本文经 TiDB Contributor 杨文授权向社区推送,原文同时在杨文个人 GitHub 开源。阅读时间 about 15 mins.

在 TiDB README 上大家应该都能看到这些徽章:
你是不是也很想在你的 GitHub 项目上也加上呢?你会觉得难吗?
我今天就是来告诉大家怎么做的,希望能帮助到你。
徽章在 GitHub 上配置起来非常简单,但是有可能你是基于 Gitlab 的私有仓库,那这篇文章可能会对你有帮助。
废话不多说,我先来简单介绍一下这 3 个徽章是什么。
Travis-CI 是什么?
Travis-CI 是国外的开源持续集成构建项目,支持 GitHub 项目,通过 yml 配置来驱动执行相对应的持续集成脚本。对于 GitHub 的项目支持起来非常简单,开通 Travis 后只需要你在自己的项目根目录下增加 .travis.yml 就好了。
GoReportCard 是什么?
GoReportCard 是一个可视化展示 Go 语言项目的检测报告服务。
Coveralls 是什么?
Coveralls 是一个自动化测试覆盖率的服务,它能提供代码覆盖率并且给以友好的展现。
添加 Build Status
这里用到的就是 Travis-CI。
开通 Travis
打开 travis 官网: https://travis-ci.org/
使用 gitHub 账号授权登录。
添加项目,这里使用我的 Golang 示例项目。
整个 ci 的过程有以下几步:
在 travis-ci 你的 profile 页面,勾选上你要持续集成的项目
在你的 GitHub 项目根目录下添加 .travis.yml ,Travis-CI 会按照 .travis.yml 里的内容进行构建
提交 .travis.yml 到 GitHub ,自动触发持续集成,
你可以到 travis-ci-status 查看结果
下面给一个我的 .travis.yml 例子:
更多配置,可以参考:
https://docs.travis-ci.com/user/customizing-the-build/
添加 Go Report Card
打开 https://goreportcard.com/
在输入框内输入你要检测的 GitHub 项目地址
点击 Generate Report
然后会跳到 https://goreportcard.com/report/github.com/golang/go
你可以查看检测报告,与此同时,你可以点击右上角的 go report| C
复制弹框中的 Markdown 格式
将第 6 步中的内容粘贴到你的项目 README 中,push 到 GitHub,刷新即可看到你 Go 项目的检测报告了。
添加 Coverage Status
开通 Coveralls
授权登录
在 Coveralls 官方网站使用 gitHub 账号登录授权。
添加项目
查看 repo_token
repo_token 涉及安全不应该提交到 .travis.yml,coveralls 提供了非对称加密 repo_token 的方法。
对于密码等敏感信息,Travis CI 提供了 2 种解决方案:
对密码等敏感信息进行加密,然后再构建环境时解密。
在 Travis CI 控制台设置环境变量,然后使用 System.getenv() 获取值。
对于文件加密,Travis CI 提供了一个基于 ruby 的 CLI 命令行工具,可以直接使用 gem 安装:
gem install travis
注意: gem 安装依赖于 ruby 以及 ruby 版本。 还有众所周知的原因,你最好切换一个 gem 源。
gem sources -l #查看gem源
对你的 token 加密:
travis encrypt COVERALLS_TOKEN=your_token
将得到的值填写到 .travis.yml 的 secure 中即可。
最后 : 如何在自己的项目中显示 Status Image?
操作起来很简单,只需要在你的 README.md 中增加 badge 链接即可。
travis 页面复制图标标签
coveralls 复制图标标签
然后将代码全部提交到 GitHub,你就可以看到 build status 和 coveralls 了。

参考资料
https://github.com/pingcap/tidb
https://github.com/nukc/how-to-use-travis-ci
https://www.jerrylou.me/工具/howto-github-travisci-coveralls-20170120.html
TiDB Contributor Club 感谢每一个小伙伴的参与和贡献,** New Contributor 赠送限量版马克杯** 的活动还在继续中 ( 点击蓝字了解详情) ,任何一个新加入集体的小伙伴都将收到我们充满诚意的礼物,很荣幸能够认识你,也很高兴能和你一起坚定地走得更远。
添加 TiDB Robot 微信( ID:tidbai ) 为好友
即可受邀进入 TiDB Contributor Club 啦

长按关注

新型分布式 NewSQL 数据库

微信号:pingcap2015
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

随时掌握互联网精彩
- 1 农文旅融合绘就美丽乡村新图景 7973373
- 2 超级计算机算出人类灭绝时间 7960003
- 3 130亿三岁影帝接了多少广告 7831792
- 4 春回大地农事起 春耕备耕正当时 7712168
- 5 天雷滚滚我好怕怕传到联合国 7699777
- 6 下周将迎超级大回暖 气温火箭式飙升 7584428
- 7 男生用镜头记录下女友5年的蜕变 7422250
- 8 《家有儿女》花了多少经费在餐桌上 7313286
- 9 美国将完全退出联合国?联合国回应 7247465
- 10 人行道出现近百个石墩占道 7109174