| | |
| | | import { isCancel, outro } from "@clack/prompts" |
| | | import chalk from "chalk" |
| | | import { styleText } from "util" |
| | | import { contentCacheFolder } from "./constants.js" |
| | | import { spawnSync } from "child_process" |
| | | import fs from "fs" |
| | |
| | | |
| | | export function exitIfCancel(val) { |
| | | if (isCancel(val)) { |
| | | outro(chalk.red("Exiting")) |
| | | outro(styleText("red", "Exiting")) |
| | | process.exit(0) |
| | | } else { |
| | | return val |
| | |
| | | const flags = ["--no-rebase", "--autostash", "-s", "recursive", "-X", "ours", "--no-edit"] |
| | | const out = spawnSync("git", ["pull", ...flags, origin, branch], { stdio: "inherit" }) |
| | | if (out.stderr) { |
| | | throw new Error(chalk.red(`Error while pulling updates: ${out.stderr}`)) |
| | | throw new Error(styleText("red", `Error while pulling updates: ${out.stderr}`)) |
| | | } else if (out.status !== 0) { |
| | | throw new Error(chalk.red("Error while pulling updates")) |
| | | throw new Error(styleText("red", "Error while pulling updates")) |
| | | } |
| | | } |
| | | |