前言
在之前的文章中 《github-actions入门》《 如何使用Github Action 自动 lerna publish 》中,介绍了 Github Actions 的一些用法,其中在构建过程中,会安装很多第三方依赖,而这些依赖会很耗时,因此可以考虑是否有优化的空间,并不需要每次都重新下载,而是可以将这些依赖缓存起来,加快构建速度。
这里专门开一篇文章,来记录 Github Actions 的缓存优化相关的知识。
在之前的文章中 《github-actions入门》《 如何使用Github Action 自动 lerna publish 》中,介绍了 Github Actions 的一些用法,其中在构建过程中,会安装很多第三方依赖,而这些依赖会很耗时,因此可以考虑是否有优化的空间,并不需要每次都重新下载,而是可以将这些依赖缓存起来,加快构建速度。
这里专门开一篇文章,来记录 Github Actions 的缓存优化相关的知识。
GitHub Actions 在早期可能是处于初级开发阶段,它的功能非常原生,甚至没有直接提供一个手动触发按钮。一般的触发方式为代码变动(push
、pull_request
),发布文件(release
)或者定时(schedule
)等,这些属于自动触发方式。如果我们需要在 GitHub 仓库没有任何变动的情况下手动触发就需要使用一些奇技淫巧。经历了漫长的功能迭代,官方最终正式带来了手动触发功能,这也宣告了一个瞎折腾时代的结束,一个崭新的折腾时代开始。
如何使用Github Action 自动 lerna publish
本文讲述的是如何利用Github Action
自动化执行 lerna publish
。
如果你团队的 git commit
信息紊乱,太过糟糕,觉得有必要统一规范 commit
格式,又或者你是一个强迫症患者,有必要让 commit
信息整整齐齐的展示。那么,你可以往下瞅瞅。
当使用 Travis CI
or Github Actions
自动化部署时,发现部署成功后,所有文章的更新时间都变成了此次提交修改的时间,但有些文章在上一次提交后是没有发生过任何修改的。
这是因为 git
在推送更新时,并不记录保存文件的访问时间、修改时间等元信息,(原因在这里)所以每次使用 git
把项目 clone
下来时,文件的时间都是克隆时的时间。又因为如果没有在 front-matter
中指定 updated
,Hexo
会默认使用文件的最后修改时间作为文章的更新时间,所以会出现所有文章的更新时间都发生变化的情况。
GitHub Actions 是 GitHub 的持续集成服务,于 2018 年 10 月推出。