Skip to content

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)的仓库转换为完整的仓库。

这样所有文章都能具有正确的最后修改时间。