fix when symlink targ is calculated and added npx quartz restore

This commit is contained in:
Jacky Zhao 2023-08-17 21:20:15 -07:00
parent c1155e64ce
commit b4ea16711d

View File

@ -267,6 +267,9 @@ See the [documentation](https://quartz.jzhao.xyz) for how to get started.
spawnSync("npm", ["i"], { stdio: "inherit" }) spawnSync("npm", ["i"], { stdio: "inherit" })
console.log(chalk.green("Done!")) console.log(chalk.green("Done!"))
}) })
.command("restore", "Try to restore your content folder from the cache", async () => {
await popContentFolder()
})
.command("sync", "Sync your Quartz to and from GitHub.", SyncArgv, async (argv) => { .command("sync", "Sync your Quartz to and from GitHub.", SyncArgv, async (argv) => {
const contentFolder = path.join(cwd, argv.directory) const contentFolder = path.join(cwd, argv.directory)
console.log(chalk.bgGreen.black(`\n Quartz v${version} \n`)) console.log(chalk.bgGreen.black(`\n Quartz v${version} \n`))
@ -275,13 +278,13 @@ See the [documentation](https://quartz.jzhao.xyz) for how to get started.
if (argv.commit) { if (argv.commit) {
const contentStat = await fs.promises.lstat(contentFolder) const contentStat = await fs.promises.lstat(contentFolder)
if (contentStat.isSymbolicLink()) { if (contentStat.isSymbolicLink()) {
const linkTarg = await fs.promises.readlink(contentFolder)
console.log(chalk.yellow("Detected symlink, trying to dereference before committing")) console.log(chalk.yellow("Detected symlink, trying to dereference before committing"))
// stash symlink file // stash symlink file
await stashContentFolder(contentFolder) await stashContentFolder(contentFolder)
// follow symlink and copy content // follow symlink and copy content
const linkTarg = await fs.promises.readlink(contentFolder)
await fs.promises.cp(linkTarg, contentFolder, { await fs.promises.cp(linkTarg, contentFolder, {
force: true, force: true,
recursive: true, recursive: true,