前言
这两天看到墨渊君大佬的一篇文章 👉 GitHub 主页丑化 & 显示掘金最近公布文章 Top10 🔥,次要是在讲怎么丑化 github 主页的,有趣味能够看看。其中有一项是讲如何配置 github action,从而将掘金最新公布的篇文章同步到主页。所以我也有样学样,很快就配置好并且同步胜利,相似这样:
但目前仅反对工夫和题目,没有点赞数、珍藏等等,且不反对其余平台,如知乎、思否,刚好我最近也在接触 github action,所以就想着看看大佬是怎么实现的,而后实现一个满足本人需要的。
牛曾经吹上了天,看起来不做是不行了。不过还好,通过一天的折腾,终于实现了大部分性能,并且开源在 github:baozouai/multi-platform-posts-action。
目前该 action 反对的性能有:
- 多平台,目前反对掘金、知乎、思否(原本做好了语雀的,但发现语雀接口很奇怪,没法拿到正确的文章链接,所以临时勾销反对语雀的性能)
-
反对生成不同平台的 icon
- 反对点赞数 👍🏻
- 反对珍藏数 ⭐(目前只有 juejin 有,知乎、思否接口比拟麻烦,暂且不做)
原本还有个文章封面的,然而生成后github首页太长了,所以就放弃该性能了
那接下来就为大家介绍如何配置,疾速丑化你的 github 主页~
丑化 github 主页
新建 github 主页仓库
如果曾经有主页仓库,能够跳过这部分。如果还不晓得 github 主页是啥,能够看下我的
主页实际上也是一个仓库,如果你没有的话,能够新建,要求是跟你的 github 同名:
大抵意思是:baozuai/baozuai 是一个 ✨ 非凡的 ✨ 存储库,您能够应用它将 README.md 增加到您的 GitHub 配置文件中。请确保它是公共的,并应用自述文件对其进行初始化以开始操作。
在你的 readme 外面增加占位符
因为咱们要将对应平台的文章主动生成到 github,所以须要一个占位符,生成之后间接替换即可,即在你的 readme.md 中增加以下占位符:
<!-- multi-platform-posts start -->
这里会插入生成的不同平台的文章列表
<!-- multi-platform-posts end -->
配置你的 github action,增加 update_readme.yml
如果还不晓得怎么增加工作流,能够看我的主页仓库,增加的地位如下:
比方咱们将其命名为 update_readme.yml(这个你任意取名),push 下来后,github 发现该目录下有 yml 的话,则会执行对应的工作流
配置 update_readme.yml
先贴下配置,不算太长,上面再讲一些细节:
# 工作流名称
name: Update Readme
# 工作流触发机会, see: https://docs.github.com/zh/actions/using-workflows/triggering-a-workflow
# 触发条件批改为: 当 main 分支有 push 操作 || 每天 0 点
on:
schedule:
- cron: '30 22 * * *'
push:
branches:
- main # 这里依据你的主分支是master还是main决定
# 作业, see: https://docs.github.com/zh/actions/using-jobs/using-jobs-in-a-workflow
jobs:
# 插入掘金列表, 应用 baozouai/multi-platform-posts-action 生成文章列表, see: https://github.com/baozouai/multi-platform-posts-action
juejin-posts:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Append Juejin Posts List 📚
uses: baozouai/multi-platform-posts-action@main
with:
user_id: '3526889034488174' # 下面拿到不同平台的id后,填入这里
platform: juejin # 这里填写不同的平台,有juejin, zhihu, segmentfault
- run: |
git pull
- name: Push to GitHub
uses: EndBug/add-and-commit@v9
with:
default_author: github_actions
message: juejin-posts
首先 name 也是能够轻易写的,比方
name: Update My Github Readme
而后设置触发条件:
# 触发条件批改为: 当 main 分支有 push 操作 || 每天 0 点
on:
schedule:
- cron: '30 22 * * *'
push:
branches:
- main # 这里依据你的主分支是master还是main决定
这里有两个:
- 第一个是每天定时 0 天触发
- 第二个就是你在 main(有可能你主分支是 master)分支 push来触发工作流。
而后就是配置 jobs 了,上面次要是讲怎么配置不同平台的。
配置不同平台,拉取文章到 github 首页
目前反对配置user_id和platform参数,通过在action我的项目的action.yml外面定义:
拿到不同平台的 id,填写配置
- 掘金:
- name: Append Juejin Posts List 📚
uses: baozouai/multi-platform-posts-action@main
with:
user_id: '3526889034488174' # 这里是我的掘金id
platform: juejin # 这里填写不同的平台
- 知乎
- name: Append Zhihu Posts List 📚
uses: baozouai/multi-platform-posts-action@main
with:
user_id: 'bao-zou-11-13-41' # 这里是我的知乎id
platform: zhihu # 这里填写不同的平台
- 思否
- name: Append Segmentfault Posts List 📚
uses: baozouai/multi-platform-posts-action@main
with:
user_id: 'baozouai' # 这里是我的思否id
platform: segmentfault # 这里填写不同的平台
触发工作流,主动同步文章
下面配置实现后,push 后就会触发 action,而后对应平台就会生成相应的 icon、工夫、点赞数、珍藏数、文章链接,例子如下:
- 掘金
- 知乎
- 思否
总结
github 首页就像以前的 qq 空间,对于爱花里花哨折腾的你,必定是心愿打扮丑化下,而如果刚好你也有写文章的话,无妨试着将文章同步到首页。
那在此之前,咱们介绍了什么是 github 首页,即是一个非凡的同名仓库;而后介绍了怎么配置工作流;之后,咱们又思考到不同的人有不同的偏好,你可能喜爱在掘金,也可能是知乎、思否或者其余平台写文章,所以本 action 反对多个热门平台,只须要填写 user_id 和 platform 即可。
当然,如果平台临时不反对的,也能够提下 issue 或 pr,一起丰盛性能,反对更多的平台。
还有,如果你没有写文章,那也没关系,因为置信看完之后,你也能学到 github 工作流的概念以及大略怎么配置。
最初
以上如果能帮忙到你的话,还请来个一键三连,点赞、珍藏、关注,如果能再来个转发,那就更好啦,谢谢大家~
发表回复