Jacky Zhao
2023-08-18 5713d30670fc9ca1f9d86e6f0698bd011a68f674
quartz/bootstrap-cli.mjs
@@ -267,6 +267,15 @@
    spawnSync("npm", ["i"], { stdio: "inherit" })
    console.log(chalk.green("Done!"))
  })
  .command(
    "restore",
    "Try to restore your content folder from the cache",
    CommonArgv,
    async (argv) => {
      const contentFolder = path.join(cwd, argv.directory)
      await popContentFolder(contentFolder)
    },
  )
  .command("sync", "Sync your Quartz to and from GitHub.", SyncArgv, async (argv) => {
    const contentFolder = path.join(cwd, argv.directory)
    console.log(chalk.bgGreen.black(`\n Quartz v${version} \n`))
@@ -275,13 +284,13 @@
    if (argv.commit) {
      const contentStat = await fs.promises.lstat(contentFolder)
      if (contentStat.isSymbolicLink()) {
        const linkTarg = await fs.promises.readlink(contentFolder)
        console.log(chalk.yellow("Detected symlink, trying to dereference before committing"))
        // stash symlink file
        await stashContentFolder(contentFolder)
        // follow symlink and copy content
        const linkTarg = await fs.promises.readlink(contentFolder)
        await fs.promises.cp(linkTarg, contentFolder, {
          force: true,
          recursive: true,
@@ -297,7 +306,7 @@
      if (contentStat.isSymbolicLink()) {
        // put symlink back
        await popContentFolder()
        await popContentFolder(contentFolder)
      }
    }