Cloudflare 部署 VitePress 最后修改时间不正确
基于 VitePress + Cloudflare Pages 自动构建后,所有文章的最后更新时间都是一样的。
问题是由于Cloudflare Pages构建时拉取git仓库可能默认带 --depth 1 参数。
VitePress是根据构建仓库的git提交时间作为最后修改时间。这会导致所有文件的最后修改时间为Cloudflare Pages构建时间,并不准确。
解决方案很简单(参考 Issue),package.json
里添加一个专用于 Cloudflare 的构建命令即可:
js
{
"scripts": {
"cfbuild": "git fetch --unshallow && vitepress build src"
}
}
命令中构建项目时先将浅克隆(shallow clone)的仓库转换为完整的仓库。
这样所有文章都能具有正确的最后修改时间。