From bcde2abcb20ad02a0c3f1430b9d620ee60e6cb63 Mon Sep 17 00:00:00 2001
From: dralagen <dralagen@dralagen.fr>
Date: Wed, 19 Mar 2025 04:47:35 +0000
Subject: [PATCH] fix(transformer): find last modified date form commit on submodule (#1831)
---
quartz/plugins/transformers/lastmod.ts | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/quartz/plugins/transformers/lastmod.ts b/quartz/plugins/transformers/lastmod.ts
index 09c1294..01054bb 100644
--- a/quartz/plugins/transformers/lastmod.ts
+++ b/quartz/plugins/transformers/lastmod.ts
@@ -2,6 +2,7 @@
import { Repository } from "@napi-rs/simple-git"
import { QuartzTransformerPlugin } from "../types"
import chalk from "chalk"
+import path from "path"
export interface Options {
priority: ("frontmatter" | "git" | "filesystem")[]
@@ -34,9 +35,11 @@
return [
() => {
let repo: Repository | undefined = undefined
+ let repositoryWorkdir: string
if (opts.priority.includes("git")) {
try {
repo = Repository.discover(ctx.argv.directory)
+ repositoryWorkdir = repo.workdir() ?? ""
} catch (e) {
console.log(
chalk.yellow(`\nWarning: couldn't find git repository for ${ctx.argv.directory}`),
@@ -62,7 +65,8 @@
published ||= file.data.frontmatter.published as MaybeDate
} else if (source === "git" && repo) {
try {
- modified ||= await repo.getFileLatestModifiedDateAsync(fullFp)
+ const relativePath = path.relative(repositoryWorkdir, fullFp)
+ modified ||= await repo.getFileLatestModifiedDateAsync(relativePath)
} catch {
console.log(
chalk.yellow(
--
Gitblit v1.10.0