谈天说地
首先在这里感谢互联网上各位大佬细致到教科书级别的教程https://blog.csdn.net/qq_33625877/article/details/114097105。
网上关于如何配置的教程百度可以搜索出来一大堆。“拿来主义“也没什么意义,这里就不继续聊配置教程了,只想谈谈自己使用半个月以来的感受。
语雀 Webhook 体验不太友好
美中不足的是语雀的 Webhook 体验一般般,不触发的概率较大。之前向语雀技术人员反馈过,期待语雀及时更新迭代。
我的解决方案是将 webhook 链接保存在浏览器书签栏,每次写完文章,手动点下链接触发同步。
yuque-hexo sync 问题
目前好像是每次全量从语雀获取文章,如果能改成增量获取就更好了。
语雀图片防盗链
关于盗链问题,yuque-hexo 的 github issue 里给了解决方案:
在头部添加
不过前提条件是你的知识库权限为“互联网可见”,这点大家仔细想想便能理解。
非 post 的更新问题
如果要更新博文,通过语雀云端同步便能解决,其他需要更改的地方如_config.yml 、 page 页面内容、友链等,需要在本地更新并 push 到 github,关于友链的同步目前我想到的一种解决方案是:在/friends/页面评论里添加友链内容后,腾讯云函数接口定期发起请求获取/fiends/评论里新增的消息体,触发 github action 更新/friends/页面 并 deploy 到远程 repo(github pages)
其他
最近优化了 Github Action 的流程,将依赖打包进 repo 内,省去额外下载的耗时
# workflow name
name: CI Hexo Blog Deploy LTS
#master branch on push, auto run
on: [push, repository_dispatch]
jobs:
Deploy-Pages:
name: Deploy Hexo Public To Pages
runs-on: ubuntu-latest
steps:
# check it to your workflow can access it
# from: https://github.com/actions/checkout
- name: Checkout Repository master branch
uses: actions/checkout@master
# from: https://github.com/actions/setup-node
- name: Setup Node.js 14.x
uses: actions/setup-node@master
with:
node-version: "14.15.2"
- name: Get Latest Commit Message
run: |
git log --pretty=format:"%s from Github Actions at `date +"%Y-%m-%d %H:%M:%S"`" --date=short -n 1 > commit-message.log
# - name: Setup Hexo Dependencies
# run: |
# npm install hexo-cli -g
# npm install yuque-hexo -g
# - name: 緩存
# uses: actions/cache@v1
# id: cache-dependencies
# with:
# path: node_modules
# key: ${{runner.OS}}-${{hashFiles('**/package-lock.json')}}
# - name: 安裝插件
# if: steps.cache-dependencies.outputs.cache-hit != 'true'
# run: |
# rm -rf node_modules && npm install --force
- name: 渲染html
env:
YUQUE_TOKEN: ${{ secrets.YUQUE_TOKEN }}
run: |
./node_modules/yuque-hexo/bin/yuque-hexo.js clean && ./node_modules/yuque-hexo/bin/yuque-hexo.js sync && ./node_modules/hexo/bin/hexo clean && ./node_modules/hexo/bin/hexo g
- name: Deploy To Github Pages
env:
Github_Pages: github.com/lonbaw/lonbaw.github.io.git
run: |
cd ./public/
git init
git config --global user.name 'lonbaw'
git config --global user.email 'lonbaw@163.com'
git remote add origin "https://lonbaw:${{ secrets.PWD_GITHUB }}@${Github_Pages}"
git add .
git commit -F ../commit-message.log
git push --force --quiet "https://lonbaw:${{ secrets.PWD_GITHUB }}@${Github_Pages}" master:master
与本文不相关的留言,请发留言本谢谢。