one-way-git-sync 6.0.7 → 6.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +2 -2
  2. package/package.json +4 -4
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import{hideBin as e}from"yargs/helpers";import t from"yargs/yargs";import{pino as i}from"pino";import o from"node:child_process";import a from"node:fs/promises";import r from"node:path";import{copy as s}from"fs-extra";import n from"micromatch";import{simpleGit as c}from"simple-git";const d=i({transport:{target:"pino-pretty",options:{colorize:!0}}});const m=r.join("node_modules",".temp","sync-git-repo");const l={dest:{type:"string",alias:"d",describe:"A URL of a destination git repository.",demand:!0},prefix:{type:"string",alias:"p",describe:"A prefix of a commit hash used to generate a commit title, e.g. 'sync <prefix>/<hash>'.\n A typical value is like 'https://github.com/WillBooster/one-way-git-sync/commits'"},branch:{type:"string",alias:"b",describe:"Specify branch of destination repo."},tag:{type:"string",alias:"t",describe:"Specify tag to be created in destination repo."},"tag-hash":{type:"boolean",describe:"Create version+hash tag (e.g. v1.31.5-2-gcdde507). It should be a unique tag."},"tag-version":{type:"boolean",describe:"Create version tag (e.g. v1.31.5). It could be a non-unique tag."},"ignore-patterns":{type:"array",alias:"i",describe:"Exclude the files whose path matches one of the given patterns.\n The patterns are processed by micromatch (https://github.com/micromatch/micromatch).\n You may specify the option multiple times. Default value is \"-i .git -i .github -i node_modules -i '.renovaterc.*'\"",default:[".git",".github","node_modules",".renovaterc.*","renovate.*"]},dry:{type:"boolean",describe:"Enable dry-run mode."},force:{type:"boolean",describe:"Force to overwrite the destination git repository."},verbose:{type:"boolean",alias:"v",describe:"Show details logs."}},g=await t(e(process.argv)).scriptName("one-way-git-sync").options(l).middleware((e=>{d.level=e.verbose?"trace":"info"})).strict().help().argv;await async function(e){await a.mkdir(m,{recursive:!0});const t=await a.mkdtemp(r.join(m,"repo-")),i=await async function(e,t,i=process.cwd()){const m={"--single-branch":null};t.force||(m["--depth"]=1);t.branch&&(m["--branch"]=t.branch);try{await c(i).clone(t.dest,e,m)}catch{delete m["--branch"],delete m["--single-branch"],await c(i).clone(t.dest,e,m),c(e).checkout(["-b",t.branch])}d.debug(`Cloned destination repo on ${e}`);const l=c(e),g=await l.log(),[p,h]=function(e){if(0===e.all.length)return d.debug("No commit history"),[];for(const t of e.all){const[e,...i]=t.message.replaceAll(/[()]/g,"").split(/[\s/]/);if("sync"===e&&i.length>0)return[t.message,i.at(-1)]}return d.debug(`No sync commit: ${e.all[0].message}`),[]}(g);if(h)d.debug(`Extracted a valid commit: ${h}`),d.debug(`(${p})`);else if(!t.force)return d.error("No valid commit in destination repo"),!1;const u=c(i);let f;try{f=await u.log(h?{from:h,to:"HEAD","--first-parent":void 0}:void 0)}catch(e){return d.error(`Failed to get source commit history: ${e.stack}`),!1}const b=f.latest?.hash;if(!b)return d.info("No synchronizable commit"),!0;const[y,w]=await Promise.all([a.readdir(e),a.readdir(i)]),v=[...new Set([...t["ignore-patterns"].map(String),".git"])];for(const t of n.not(y,v))await a.rm(r.join(e,t),{recursive:!0,force:!0});for(const t of n.not(w,v))await s(r.join(i,t),r.join(e,t));await l.add("-A");let $="";if(t["tag-hash"]||t["tag-version"]){const e="git describe --tags --always "+(t["tag-version"]?"--abbrev=0":"");$=o.execSync(e,{cwd:i}).toString().trim()}let x=t.prefix??await async function(e){const t=(await e.getRemotes(!0)).find((e=>"origin"===e.name)),i=t?.refs?.fetch??t?.refs?.push;if("string"==typeof i&&i.includes("github.com")){const e=i.split("/"),t=e.at(-2),o=e.at(-1)?.replace(/.git$/,"");if(t&&o)return`https://github.com/${t}/${o}/commits`}}(u)??"";x&&!x.endsWith("/")&&(x+="/");const k=`${x}${b}`,S=$?`sync ${$} (${k})`:`sync ${k}`,j=h?f.all.map((e=>`* ${e.message}`)).join("\n\n"):`Replace all the files with those of ${t.dest} due to missing sync commit.`;try{await l.commit(`${S}\n\n${j}`),d.debug(`Created a commit: ${S}`),d.debug(` with body: ${j}`)}catch(e){return d.error(`Failed to commit changes: ${e.stack}`),!1}const A=$||t.tag;if(A)try{await l.addTag(A),d.debug(`Created a tag: ${A}`)}catch{d.warn(`Failed to create a tag: ${A}`)}if(t.dry)return d.debug("Finished dry run"),!0;try{await(t.branch?l.push("origin",t.branch):l.push()),A&&await l.push({"--tags":null})}catch(e){return d.error(`Failed to push the commit: ${e.stack}`),!1}return d.debug("Pushed the commit"),!0}(t,e);process.exit(i?0:1)}(g);
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9sb2dnZXIudHMiLCIuLi9zcmMvc3luYy50cyIsIi4uL3NyYy95YXJnc09wdGlvbnMudHMiLCIuLi9zcmMvaW5kZXgudHMiLCIuLi9zcmMvZ2l0SHViLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBpbm8gfSBmcm9tICdwaW5vJztcblxuZXhwb3J0IGNvbnN0IGxvZ2dlciA9IHBpbm8oe1xuICB0cmFuc3BvcnQ6IHtcbiAgICB0YXJnZXQ6ICdwaW5vLXByZXR0eScsXG4gICAgb3B0aW9uczoge1xuICAgICAgY29sb3JpemU6IHRydWUsXG4gICAgfSxcbiAgfSxcbn0pO1xuIiwiaW1wb3J0IGNoaWxkX3Byb2Nlc3MgZnJvbSAnbm9kZTpjaGlsZF9wcm9jZXNzJztcbmltcG9ydCBmcyBmcm9tICdub2RlOmZzL3Byb21pc2VzJztcbmltcG9ydCBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5cbmltcG9ydCB7IGNvcHkgfSBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgbWljcm9tYXRjaCBmcm9tICdtaWNyb21hdGNoJztcbmltcG9ydCB0eXBlIHsgTG9nUmVzdWx0LCBPcHRpb25zLCBTaW1wbGVHaXQsIFRhc2tPcHRpb25zIH0gZnJvbSAnc2ltcGxlLWdpdCc7XG5pbXBvcnQgeyBzaW1wbGVHaXQgfSBmcm9tICdzaW1wbGUtZ2l0JztcbmltcG9ydCB0eXBlIHsgSW5mZXJyZWRPcHRpb25UeXBlcyB9IGZyb20gJ3lhcmdzJztcblxuaW1wb3J0IHsgZ2V0R2l0SHViQ29tbWl0c1VybCB9IGZyb20gJy4vZ2l0SHViLmpzJztcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gJy4vbG9nZ2VyLmpzJztcbmltcG9ydCB0eXBlIHsgeWFyZ3NPcHRpb25zIH0gZnJvbSAnLi95YXJnc09wdGlvbnMuanMnO1xuXG5jb25zdCBzeW5jRGlyUGF0aCA9IHBhdGguam9pbignbm9kZV9tb2R1bGVzJywgJy50ZW1wJywgJ3N5bmMtZ2l0LXJlcG8nKTtcblxuZXhwb3J0IHR5cGUgWWFyZ3NPcHRpb25zID0gSW5mZXJyZWRPcHRpb25UeXBlczx0eXBlb2YgeWFyZ3NPcHRpb25zPjtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHN5bmMob3B0czogWWFyZ3NPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGZzLm1rZGlyKHN5bmNEaXJQYXRoLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgY29uc3QgZGlyUGF0aCA9IGF3YWl0IGZzLm1rZHRlbXAocGF0aC5qb2luKHN5bmNEaXJQYXRoLCAncmVwby0nKSk7XG4gIGNvbnN0IHJldCA9IGF3YWl0IHN5bmNDb3JlKGRpclBhdGgsIG9wdHMpO1xuICAvLyBhd2FpdCBmcy5ybShkaXJQYXRoLCB7IHJlY3Vyc2l2ZTogdHJ1ZSwgZm9yY2U6IHRydWUgfSk7XG4gIHByb2Nlc3MuZXhpdChyZXQgPyAwIDogMSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzeW5jQ29yZShcbiAgZGVzdFJlcG9QYXRoOiBzdHJpbmcsXG4gIG9wdHM6IFlhcmdzT3B0aW9ucyxcbiAgc3JjUmVwb1BhdGggPSBwcm9jZXNzLmN3ZCgpXG4pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHVuaWNvcm4vbm8tbnVsbFxuICBjb25zdCBjbG9uZU9wdHM6IE9wdGlvbnMgPSB7ICctLXNpbmdsZS1icmFuY2gnOiBudWxsIH07XG4gIGlmICghb3B0cy5mb3JjZSkge1xuICAgIGNsb25lT3B0c1snLS1kZXB0aCddID0gMTtcbiAgfVxuICBpZiAob3B0cy5icmFuY2gpIHtcbiAgICBjbG9uZU9wdHNbJy0tYnJhbmNoJ10gPSBvcHRzLmJyYW5jaDtcbiAgfVxuICB0cnkge1xuICAgIGF3YWl0IHNpbXBsZUdpdChzcmNSZXBvUGF0aCkuY2xvbmUob3B0cy5kZXN0LCBkZXN0UmVwb1BhdGgsIGNsb25lT3B0cyk7XG4gIH0gY2F0Y2gge1xuICAgIGRlbGV0ZSBjbG9uZU9wdHNbJy0tYnJhbmNoJ107XG4gICAgZGVsZXRlIGNsb25lT3B0c1snLS1zaW5nbGUtYnJhbmNoJ107XG4gICAgYXdhaXQgc2ltcGxlR2l0KHNyY1JlcG9QYXRoKS5jbG9uZShvcHRzLmRlc3QsIGRlc3RSZXBvUGF0aCwgY2xvbmVPcHRzKTtcbiAgICBzaW1wbGVHaXQoZGVzdFJlcG9QYXRoKS5jaGVja291dChbJy1iJywgb3B0cy5icmFuY2hdIGFzIFRhc2tPcHRpb25zKTtcbiAgfVxuICBsb2dnZXIuZGVidWcoYENsb25lZCBkZXN0aW5hdGlvbiByZXBvIG9uICR7ZGVzdFJlcG9QYXRofWApO1xuXG4gIGNvbnN0IGRzdEdpdDogU2ltcGxlR2l0ID0gc2ltcGxlR2l0KGRlc3RSZXBvUGF0aCk7XG4gIGNvbnN0IGRzdExvZyA9IGF3YWl0IGRzdEdpdC5sb2coKTtcblxuICBjb25zdCBbaGVhZCwgZnJvbV0gPSBleHRyYWN0Q29tbWl0SGFzaChkc3RMb2cpO1xuICBpZiAoZnJvbSkge1xuICAgIGxvZ2dlci5kZWJ1ZyhgRXh0cmFjdGVkIGEgdmFsaWQgY29tbWl0OiAke2Zyb219YCk7XG4gICAgbG9nZ2VyLmRlYnVnKGAoJHtoZWFkfSlgKTtcbiAgfSBlbHNlIGlmICghb3B0cy5mb3JjZSkge1xuICAgIGxvZ2dlci5lcnJvcignTm8gdmFsaWQgY29tbWl0IGluIGRlc3RpbmF0aW9uIHJlcG8nKTtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBzcmNHaXQ6IFNpbXBsZUdpdCA9IHNpbXBsZUdpdChzcmNSZXBvUGF0aCk7XG4gIGxldCBzcmNMb2c6IExvZ1Jlc3VsdDtcbiAgdHJ5IHtcbiAgICAvLyAnLS1maXJzdC1wYXJlbnQnIGhpZGVzIGNoaWxkcmVuIGNvbW1pdHMgb2YgbWVyZ2UgY29tbWl0c1xuICAgIHNyY0xvZyA9IGF3YWl0IHNyY0dpdC5sb2coZnJvbSA/IHsgZnJvbSwgdG86ICdIRUFEJywgJy0tZmlyc3QtcGFyZW50JzogdW5kZWZpbmVkIH0gOiB1bmRlZmluZWQpO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGxvZ2dlci5lcnJvcihgRmFpbGVkIHRvIGdldCBzb3VyY2UgY29tbWl0IGhpc3Rvcnk6ICR7KGVycm9yIGFzIEVycm9yKS5zdGFja31gKTtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBsYXRlc3RIYXNoID0gc3JjTG9nLmxhdGVzdD8uaGFzaDtcbiAgaWYgKCFsYXRlc3RIYXNoKSB7XG4gICAgbG9nZ2VyLmluZm8oJ05vIHN5bmNocm9uaXphYmxlIGNvbW1pdCcpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY29uc3QgW2Rlc3RGaWxlcywgc3JjRmlsZXNdID0gYXdhaXQgUHJvbWlzZS5hbGwoW2ZzLnJlYWRkaXIoZGVzdFJlcG9QYXRoKSwgZnMucmVhZGRpcihzcmNSZXBvUGF0aCldKTtcbiAgLy8gRm9yY2UgdG8gaWdub3JlIC5naXQgZGlyZWN0b3J5XG4gIGNvbnN0IGlnbm9yZVBhdHRlcm5zID0gWy4uLm5ldyBTZXQoWy4uLm9wdHNbJ2lnbm9yZS1wYXR0ZXJucyddLm1hcChTdHJpbmcpLCAnLmdpdCddKV07XG4gIGZvciAoY29uc3QgZGVzdEZpbGUgb2YgbWljcm9tYXRjaC5ub3QoZGVzdEZpbGVzLCBpZ25vcmVQYXR0ZXJucykpIHtcbiAgICBhd2FpdCBmcy5ybShwYXRoLmpvaW4oZGVzdFJlcG9QYXRoLCBkZXN0RmlsZSksIHsgcmVjdXJzaXZlOiB0cnVlLCBmb3JjZTogdHJ1ZSB9KTtcbiAgfVxuICBmb3IgKGNvbnN0IHNyY0ZpbGUgb2YgbWljcm9tYXRjaC5ub3Qoc3JjRmlsZXMsIGlnbm9yZVBhdHRlcm5zKSkge1xuICAgIGF3YWl0IGNvcHkocGF0aC5qb2luKHNyY1JlcG9QYXRoLCBzcmNGaWxlKSwgcGF0aC5qb2luKGRlc3RSZXBvUGF0aCwgc3JjRmlsZSkpO1xuICB9XG4gIGF3YWl0IGRzdEdpdC5hZGQoJy1BJyk7XG5cbiAgbGV0IHNyY1RhZyA9ICcnO1xuICBpZiAob3B0c1sndGFnLWhhc2gnXSB8fCBvcHRzWyd0YWctdmVyc2lvbiddKSB7XG4gICAgLy8gZS5nLiBgLS1hYmJyZXY9MGAgY2hhbmdlcyBgdjEuMzEuNS0yLWdjZGRlNTA3YCB0byBgdjEuMzEuNWBcbiAgICBjb25zdCBkZXNjcmliZUNvbW1hbmQgPSBgZ2l0IGRlc2NyaWJlIC0tdGFncyAtLWFsd2F5cyAke29wdHNbJ3RhZy12ZXJzaW9uJ10gPyAnLS1hYmJyZXY9MCcgOiAnJ31gO1xuICAgIHNyY1RhZyA9IGNoaWxkX3Byb2Nlc3MuZXhlY1N5bmMoZGVzY3JpYmVDb21tYW5kLCB7IGN3ZDogc3JjUmVwb1BhdGggfSkudG9TdHJpbmcoKS50cmltKCk7XG4gIH1cbiAgbGV0IHByZWZpeCA9IG9wdHMucHJlZml4ID8/IChhd2FpdCBnZXRHaXRIdWJDb21taXRzVXJsKHNyY0dpdCkpID8/ICcnO1xuICBpZiAocHJlZml4ICYmICFwcmVmaXguZW5kc1dpdGgoJy8nKSkge1xuICAgIHByZWZpeCArPSAnLyc7XG4gIH1cbiAgY29uc3QgbGluayA9IGAke3ByZWZpeH0ke2xhdGVzdEhhc2h9YDtcbiAgY29uc3QgdGl0bGUgPSBzcmNUYWcgPyBgc3luYyAke3NyY1RhZ30gKCR7bGlua30pYCA6IGBzeW5jICR7bGlua31gO1xuICBjb25zdCBib2R5ID0gZnJvbVxuICAgID8gc3JjTG9nLmFsbC5tYXAoKGwpID0+IGAqICR7bC5tZXNzYWdlfWApLmpvaW4oJ1xcblxcbicpXG4gICAgOiBgUmVwbGFjZSBhbGwgdGhlIGZpbGVzIHdpdGggdGhvc2Ugb2YgJHtvcHRzLmRlc3R9IGR1ZSB0byBtaXNzaW5nIHN5bmMgY29tbWl0LmA7XG4gIHRyeSB7XG4gICAgYXdhaXQgZHN0R2l0LmNvbW1pdChgJHt0aXRsZX1cXG5cXG4ke2JvZHl9YCk7XG4gICAgbG9nZ2VyLmRlYnVnKGBDcmVhdGVkIGEgY29tbWl0OiAke3RpdGxlfWApO1xuICAgIGxvZ2dlci5kZWJ1ZyhgICB3aXRoIGJvZHk6ICR7Ym9keX1gKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBsb2dnZXIuZXJyb3IoYEZhaWxlZCB0byBjb21taXQgY2hhbmdlczogJHsoZXJyb3IgYXMgRXJyb3IpLnN0YWNrfWApO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGRlc3RUYWcgPSBzcmNUYWcgfHwgb3B0cy50YWc7XG4gIGlmIChkZXN0VGFnKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGRzdEdpdC5hZGRUYWcoZGVzdFRhZyk7XG4gICAgICBsb2dnZXIuZGVidWcoYENyZWF0ZWQgYSB0YWc6ICR7ZGVzdFRhZ31gKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIElnbm9yZSB0aGUgZXJyb3Igc2luY2UgYC0tYWJicmV2PTBgIG1heSB5aWVsZCBhIHRhZyB0aGF0IGFscmVhZHkgZXhpc3RzXG4gICAgICBsb2dnZXIud2FybihgRmFpbGVkIHRvIGNyZWF0ZSBhIHRhZzogJHtkZXN0VGFnfWApO1xuICAgIH1cbiAgfVxuXG4gIGlmIChvcHRzLmRyeSkge1xuICAgIGxvZ2dlci5kZWJ1ZygnRmluaXNoZWQgZHJ5IHJ1bicpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCAob3B0cy5icmFuY2ggPyBkc3RHaXQucHVzaCgnb3JpZ2luJywgb3B0cy5icmFuY2gpIDogZHN0R2l0LnB1c2goKSk7XG4gICAgaWYgKGRlc3RUYWcpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL25vLW51bGxcbiAgICAgIGF3YWl0IGRzdEdpdC5wdXNoKHsgJy0tdGFncyc6IG51bGwgfSk7XG4gICAgfVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGxvZ2dlci5lcnJvcihgRmFpbGVkIHRvIHB1c2ggdGhlIGNvbW1pdDogJHsoZXJyb3IgYXMgRXJyb3IpLnN0YWNrfWApO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGxvZ2dlci5kZWJ1ZygnUHVzaGVkIHRoZSBjb21taXQnKTtcbiAgcmV0dXJuIHRydWU7XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RDb21taXRIYXNoKGxvZ1Jlc3VsdDogTG9nUmVzdWx0KTogW3N0cmluZywgc3RyaW5nXSB8IFtdIHtcbiAgaWYgKGxvZ1Jlc3VsdC5hbGwubGVuZ3RoID09PSAwKSB7XG4gICAgbG9nZ2VyLmRlYnVnKCdObyBjb21taXQgaGlzdG9yeScpO1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIGZvciAoY29uc3QgbG9nIG9mIGxvZ1Jlc3VsdC5hbGwpIHtcbiAgICBjb25zdCBbaGVhZCwgLi4ud29yZHNdID0gbG9nLm1lc3NhZ2UucmVwbGFjZUFsbCgvWygpXS9nLCAnJykuc3BsaXQoL1tcXHMvXS8pO1xuICAgIGlmIChoZWFkID09PSAnc3luYycgJiYgd29yZHMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIFtsb2cubWVzc2FnZSwgd29yZHMuYXQoLTEpIGFzIHN0cmluZ107XG4gICAgfVxuICB9XG4gIGxvZ2dlci5kZWJ1ZyhgTm8gc3luYyBjb21taXQ6ICR7bG9nUmVzdWx0LmFsbFswXS5tZXNzYWdlfWApO1xuICByZXR1cm4gW107XG59XG4iLCJleHBvcnQgY29uc3QgeWFyZ3NPcHRpb25zID0ge1xuICBkZXN0OiB7XG4gICAgdHlwZTogJ3N0cmluZycsXG4gICAgYWxpYXM6ICdkJyxcbiAgICBkZXNjcmliZTogJ0EgVVJMIG9mIGEgZGVzdGluYXRpb24gZ2l0IHJlcG9zaXRvcnkuJyxcbiAgICBkZW1hbmQ6IHRydWUsXG4gIH0sXG4gIHByZWZpeDoge1xuICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIGFsaWFzOiAncCcsXG4gICAgZGVzY3JpYmU6IGBBIHByZWZpeCBvZiBhIGNvbW1pdCBoYXNoIHVzZWQgdG8gZ2VuZXJhdGUgYSBjb21taXQgdGl0bGUsIGUuZy4gJ3N5bmMgPHByZWZpeD4vPGhhc2g+Jy5cbiAgICAgICAgICAgICAgIEEgdHlwaWNhbCB2YWx1ZSBpcyBsaWtlICdodHRwczovL2dpdGh1Yi5jb20vV2lsbEJvb3N0ZXIvb25lLXdheS1naXQtc3luYy9jb21taXRzJ2AsXG4gIH0sXG4gIGJyYW5jaDoge1xuICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIGFsaWFzOiAnYicsXG4gICAgZGVzY3JpYmU6ICdTcGVjaWZ5IGJyYW5jaCBvZiBkZXN0aW5hdGlvbiByZXBvLicsXG4gIH0sXG4gIHRhZzoge1xuICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIGFsaWFzOiAndCcsXG4gICAgZGVzY3JpYmU6ICdTcGVjaWZ5IHRhZyB0byBiZSBjcmVhdGVkIGluIGRlc3RpbmF0aW9uIHJlcG8uJyxcbiAgfSxcbiAgJ3RhZy1oYXNoJzoge1xuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZXNjcmliZTogJ0NyZWF0ZSB2ZXJzaW9uK2hhc2ggdGFnIChlLmcuIHYxLjMxLjUtMi1nY2RkZTUwNykuIEl0IHNob3VsZCBiZSBhIHVuaXF1ZSB0YWcuJyxcbiAgfSxcbiAgJ3RhZy12ZXJzaW9uJzoge1xuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZXNjcmliZTogJ0NyZWF0ZSB2ZXJzaW9uIHRhZyAoZS5nLiB2MS4zMS41KS4gSXQgY291bGQgYmUgYSBub24tdW5pcXVlIHRhZy4nLFxuICB9LFxuICAnaWdub3JlLXBhdHRlcm5zJzoge1xuICAgIHR5cGU6ICdhcnJheScsXG4gICAgYWxpYXM6ICdpJyxcbiAgICBkZXNjcmliZTogYEV4Y2x1ZGUgdGhlIGZpbGVzIHdob3NlIHBhdGggbWF0Y2hlcyBvbmUgb2YgdGhlIGdpdmVuIHBhdHRlcm5zLlxuICAgICAgICAgICAgICAgVGhlIHBhdHRlcm5zIGFyZSBwcm9jZXNzZWQgYnkgbWljcm9tYXRjaCAoaHR0cHM6Ly9naXRodWIuY29tL21pY3JvbWF0Y2gvbWljcm9tYXRjaCkuXG4gICAgICAgICAgICAgICBZb3UgbWF5IHNwZWNpZnkgdGhlIG9wdGlvbiBtdWx0aXBsZSB0aW1lcy4gRGVmYXVsdCB2YWx1ZSBpcyBcIi1pIC5naXQgLWkgLmdpdGh1YiAtaSBub2RlX21vZHVsZXMgLWkgJy5yZW5vdmF0ZXJjLionXCJgLFxuICAgIGRlZmF1bHQ6IFsnLmdpdCcsICcuZ2l0aHViJywgJ25vZGVfbW9kdWxlcycsICcucmVub3ZhdGVyYy4qJywgJ3Jlbm92YXRlLionXSxcbiAgfSxcbiAgZHJ5OiB7XG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlc2NyaWJlOiAnRW5hYmxlIGRyeS1ydW4gbW9kZS4nLFxuICB9LFxuICBmb3JjZToge1xuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZXNjcmliZTogJ0ZvcmNlIHRvIG92ZXJ3cml0ZSB0aGUgZGVzdGluYXRpb24gZ2l0IHJlcG9zaXRvcnkuJyxcbiAgfSxcbiAgdmVyYm9zZToge1xuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBhbGlhczogJ3YnLFxuICAgIGRlc2NyaWJlOiAnU2hvdyBkZXRhaWxzIGxvZ3MuJyxcbiAgfSxcbn0gYXMgY29uc3Q7XG4iLCJpbXBvcnQgeyBoaWRlQmluIH0gZnJvbSAneWFyZ3MvaGVscGVycyc7XG5pbXBvcnQgeWFyZ3MgZnJvbSAneWFyZ3MveWFyZ3MnO1xuXG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tICcuL2xvZ2dlci5qcyc7XG5pbXBvcnQgeyBzeW5jIH0gZnJvbSAnLi9zeW5jLmpzJztcbmltcG9ydCB7IHlhcmdzT3B0aW9ucyB9IGZyb20gJy4veWFyZ3NPcHRpb25zLmpzJztcblxuY29uc3QgYXJndiA9IGF3YWl0IHlhcmdzKGhpZGVCaW4ocHJvY2Vzcy5hcmd2KSlcbiAgLnNjcmlwdE5hbWUoJ29uZS13YXktZ2l0LXN5bmMnKVxuICAub3B0aW9ucyh5YXJnc09wdGlvbnMpXG4gIC5taWRkbGV3YXJlKChhcmd2KSA9PiB7XG4gICAgbG9nZ2VyLmxldmVsID0gYXJndi52ZXJib3NlID8gJ3RyYWNlJyA6ICdpbmZvJztcbiAgfSlcbiAgLnN0cmljdCgpXG4gIC5oZWxwKCkuYXJndjtcbmF3YWl0IHN5bmMoYXJndik7XG4iLCJpbXBvcnQgdHlwZSB7IFNpbXBsZUdpdCB9IGZyb20gJ3NpbXBsZS1naXQnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0R2l0SHViQ29tbWl0c1VybChnaXQ6IFNpbXBsZUdpdCk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gIGNvbnN0IHJlbW90ZXMgPSBhd2FpdCBnaXQuZ2V0UmVtb3Rlcyh0cnVlKTtcbiAgY29uc3Qgb3JpZ2luID0gcmVtb3Rlcy5maW5kKChyKSA9PiByLm5hbWUgPT09ICdvcmlnaW4nKTtcbiAgY29uc3QgcmVtb3RlVXJsID0gb3JpZ2luPy5yZWZzPy5mZXRjaCA/PyBvcmlnaW4/LnJlZnM/LnB1c2g7XG4gIGlmICh0eXBlb2YgcmVtb3RlVXJsID09PSAnc3RyaW5nJyAmJiByZW1vdGVVcmwuaW5jbHVkZXMoJ2dpdGh1Yi5jb20nKSkge1xuICAgIGNvbnN0IHdvcmRzID0gcmVtb3RlVXJsLnNwbGl0KCcvJyk7XG4gICAgY29uc3Qgb3JnID0gd29yZHMuYXQoLTIpO1xuICAgIGNvbnN0IG5hbWUgPSB3b3Jkcy5hdCgtMSk/LnJlcGxhY2UoLy5naXQkLywgJycpO1xuICAgIGlmIChvcmcgJiYgbmFtZSkgcmV0dXJuIGBodHRwczovL2dpdGh1Yi5jb20vJHtvcmd9LyR7bmFtZX0vY29tbWl0c2A7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJsb2dnZXIiLCJwaW5vIiwidHJhbnNwb3J0IiwidGFyZ2V0Iiwib3B0aW9ucyIsImNvbG9yaXplIiwic3luY0RpclBhdGgiLCJwYXRoIiwiam9pbiIsInlhcmdzT3B0aW9ucyIsImRlc3QiLCJ0eXBlIiwiYWxpYXMiLCJkZXNjcmliZSIsImRlbWFuZCIsInByZWZpeCIsImJyYW5jaCIsInRhZyIsImRlZmF1bHQiLCJkcnkiLCJmb3JjZSIsInZlcmJvc2UiLCJhcmd2IiwieWFyZ3MiLCJoaWRlQmluIiwicHJvY2VzcyIsInNjcmlwdE5hbWUiLCJtaWRkbGV3YXJlIiwibGV2ZWwiLCJzdHJpY3QiLCJoZWxwIiwiYXN5bmMiLCJvcHRzIiwiZnMiLCJta2RpciIsInJlY3Vyc2l2ZSIsImRpclBhdGgiLCJta2R0ZW1wIiwicmV0IiwiZGVzdFJlcG9QYXRoIiwic3JjUmVwb1BhdGgiLCJjd2QiLCJjbG9uZU9wdHMiLCJzaW1wbGVHaXQiLCJjbG9uZSIsImNoZWNrb3V0IiwiZGVidWciLCJkc3RHaXQiLCJkc3RMb2ciLCJsb2ciLCJoZWFkIiwiZnJvbSIsImxvZ1Jlc3VsdCIsImFsbCIsImxlbmd0aCIsIndvcmRzIiwibWVzc2FnZSIsInJlcGxhY2VBbGwiLCJzcGxpdCIsImF0IiwiZXh0cmFjdENvbW1pdEhhc2giLCJlcnJvciIsInNyY0dpdCIsInNyY0xvZyIsInRvIiwidW5kZWZpbmVkIiwic3RhY2siLCJsYXRlc3RIYXNoIiwibGF0ZXN0IiwiaGFzaCIsImluZm8iLCJkZXN0RmlsZXMiLCJzcmNGaWxlcyIsIlByb21pc2UiLCJyZWFkZGlyIiwiaWdub3JlUGF0dGVybnMiLCJTZXQiLCJtYXAiLCJTdHJpbmciLCJkZXN0RmlsZSIsIm1pY3JvbWF0Y2giLCJub3QiLCJybSIsInNyY0ZpbGUiLCJjb3B5IiwiYWRkIiwic3JjVGFnIiwiZGVzY3JpYmVDb21tYW5kIiwiY2hpbGRfcHJvY2VzcyIsImV4ZWNTeW5jIiwidG9TdHJpbmciLCJ0cmltIiwiZ2l0Iiwib3JpZ2luIiwiZ2V0UmVtb3RlcyIsImZpbmQiLCJyIiwibmFtZSIsInJlbW90ZVVybCIsInJlZnMiLCJmZXRjaCIsInB1c2giLCJpbmNsdWRlcyIsIm9yZyIsInJlcGxhY2UiLCJnZXRHaXRIdWJDb21taXRzVXJsIiwiZW5kc1dpdGgiLCJsaW5rIiwidGl0bGUiLCJib2R5IiwibCIsImNvbW1pdCIsImRlc3RUYWciLCJhZGRUYWciLCJ3YXJuIiwic3luY0NvcmUiLCJleGl0Iiwic3luYyJdLCJtYXBwaW5ncyI6IjJSQUVPLE1BQU1BLEVBQVNDLEVBQUssQ0FDekJDLFVBQVcsQ0FDVEMsT0FBUSxjQUNSQyxRQUFTLENBQ1BDLFVBQVUsTUNRaEIsTUFBTUMsRUFBY0MsRUFBS0MsS0FBSyxlQUFnQixRQUFTLGlCQ2RoRCxNQUFNQyxFQUFlLENBQzFCQyxLQUFNLENBQ0pDLEtBQU0sU0FDTkMsTUFBTyxJQUNQQyxTQUFVLHlDQUNWQyxRQUFRLEdBRVZDLE9BQVEsQ0FDTkosS0FBTSxTQUNOQyxNQUFPLElBQ1BDLFNBQVUsNkxBR1pHLE9BQVEsQ0FDTkwsS0FBTSxTQUNOQyxNQUFPLElBQ1BDLFNBQVUsdUNBRVpJLElBQUssQ0FDSE4sS0FBTSxTQUNOQyxNQUFPLElBQ1BDLFNBQVUsa0RBRVosV0FBWSxDQUNWRixLQUFNLFVBQ05FLFNBQVUsaUZBRVosY0FBZSxDQUNiRixLQUFNLFVBQ05FLFNBQVUsb0VBRVosa0JBQW1CLENBQ2pCRixLQUFNLFFBQ05DLE1BQU8sSUFDUEMsU0FBVSw2U0FHVkssUUFBUyxDQUFDLE9BQVEsVUFBVyxlQUFnQixnQkFBaUIsZUFFaEVDLElBQUssQ0FDSFIsS0FBTSxVQUNORSxTQUFVLHdCQUVaTyxNQUFPLENBQ0xULEtBQU0sVUFDTkUsU0FBVSxzREFFWlEsUUFBUyxDQUNQVixLQUFNLFVBQ05DLE1BQU8sSUFDUEMsU0FBVSx1QkMzQ1JTLFFBQWFDLEVBQU1DLEVBQVFDLFFBQVFILE9BQ3RDSSxXQUFXLG9CQUNYdEIsUUFBUUssR0FDUmtCLFlBQVlMLElBQ1h0QixFQUFPNEIsTUFBUU4sRUFBS0QsUUFBVSxRQUFVLE1BQU0sSUFFL0NRLFNBQ0FDLE9BQU9SLFdGSUhTLGVBQW9CQyxTQUNuQkMsRUFBR0MsTUFBTTVCLEVBQWEsQ0FBRTZCLFdBQVcsSUFDekMsTUFBTUMsUUFBZ0JILEVBQUdJLFFBQVE5QixFQUFLQyxLQUFLRixFQUFhLFVBQ2xEZ0MsUUFLRFAsZUFDTFEsRUFDQVAsRUFDQVEsRUFBY2YsUUFBUWdCLE9BR3RCLE1BQU1DLEVBQXFCLENBQUUsa0JBQW1CLE1BQzNDVixFQUFLWixRQUNSc0IsRUFBVSxXQUFhLEdBRXJCVixFQUFLaEIsU0FDUDBCLEVBQVUsWUFBY1YsRUFBS2hCLFFBRS9CLFVBQ1EyQixFQUFVSCxHQUFhSSxNQUFNWixFQUFLdEIsS0FBTTZCLEVBQWNHLEVBQzlELENBQUUsYUFDT0EsRUFBVSxtQkFDVkEsRUFBVSx5QkFDWEMsRUFBVUgsR0FBYUksTUFBTVosRUFBS3RCLEtBQU02QixFQUFjRyxHQUM1REMsRUFBVUosR0FBY00sU0FBUyxDQUFDLEtBQU1iLEVBQUtoQixRQUMvQyxDQUNBaEIsRUFBTzhDLE1BQU0sOEJBQThCUCxLQUUzQyxNQUFNUSxFQUFvQkosRUFBVUosR0FDOUJTLFFBQWVELEVBQU9FLE9BRXJCQyxFQUFNQyxHQTJGZixTQUEyQkMsR0FDekIsR0FBNkIsSUFBekJBLEVBQVVDLElBQUlDLE9BRWhCLE9BREF0RCxFQUFPOEMsTUFBTSxxQkFDTixHQUdULElBQUssTUFBTUcsS0FBT0csRUFBVUMsSUFBSyxDQUMvQixNQUFPSCxLQUFTSyxHQUFTTixFQUFJTyxRQUFRQyxXQUFXLFFBQVMsSUFBSUMsTUFBTSxTQUNuRSxHQUFhLFNBQVRSLEdBQW1CSyxFQUFNRCxPQUFTLEVBQ3BDLE1BQU8sQ0FBQ0wsRUFBSU8sUUFBU0QsRUFBTUksSUFBSSxHQUVuQyxDQUVBLE9BREEzRCxFQUFPOEMsTUFBTSxtQkFBbUJNLEVBQVVDLElBQUksR0FBR0csV0FDMUMsRUFDVCxDQXpHdUJJLENBQWtCWixHQUN2QyxHQUFJRyxFQUNGbkQsRUFBTzhDLE1BQU0sNkJBQTZCSyxLQUMxQ25ELEVBQU84QyxNQUFNLElBQUlJLFdBQ1osSUFBS2xCLEVBQUtaLE1BRWYsT0FEQXBCLEVBQU82RCxNQUFNLHdDQUNOLEVBR1QsTUFBTUMsRUFBb0JuQixFQUFVSCxHQUNwQyxJQUFJdUIsRUFDSixJQUVFQSxRQUFlRCxFQUFPYixJQUFJRSxFQUFPLENBQUVBLE9BQU1hLEdBQUksT0FBUSxzQkFBa0JDLFFBQWNBLEVBQ3RGLENBQUMsTUFBT0osR0FFUCxPQURBN0QsRUFBTzZELE1BQU0sd0NBQXlDQSxFQUFnQkssVUFDL0QsQ0FDVCxDQUVBLE1BQU1DLEVBQWFKLEVBQU9LLFFBQVFDLEtBQ2xDLElBQUtGLEVBRUgsT0FEQW5FLEVBQU9zRSxLQUFLLDZCQUNMLEVBR1QsTUFBT0MsRUFBV0MsU0FBa0JDLFFBQVFwQixJQUFJLENBQUNwQixFQUFHeUMsUUFBUW5DLEdBQWVOLEVBQUd5QyxRQUFRbEMsS0FFaEZtQyxFQUFpQixJQUFJLElBQUlDLElBQUksSUFBSTVDLEVBQUssbUJBQW1CNkMsSUFBSUMsUUFBUyxVQUM1RSxJQUFLLE1BQU1DLEtBQVlDLEVBQVdDLElBQUlWLEVBQVdJLFNBQ3pDMUMsRUFBR2lELEdBQUczRSxFQUFLQyxLQUFLK0IsRUFBY3dDLEdBQVcsQ0FBRTVDLFdBQVcsRUFBTWYsT0FBTyxJQUUzRSxJQUFLLE1BQU0rRCxLQUFXSCxFQUFXQyxJQUFJVCxFQUFVRyxTQUN2Q1MsRUFBSzdFLEVBQUtDLEtBQUtnQyxFQUFhMkMsR0FBVTVFLEVBQUtDLEtBQUsrQixFQUFjNEMsVUFFaEVwQyxFQUFPc0MsSUFBSSxNQUVqQixJQUFJQyxFQUFTLEdBQ2IsR0FBSXRELEVBQUssYUFBZUEsRUFBSyxlQUFnQixDQUUzQyxNQUFNdUQsRUFBa0IsaUNBQWdDdkQsRUFBSyxlQUFpQixhQUFlLElBQzdGc0QsRUFBU0UsRUFBY0MsU0FBU0YsRUFBaUIsQ0FBRTlDLElBQUtELElBQWVrRCxXQUFXQyxNQUNwRixDQUNBLElBQUk1RSxFQUFTaUIsRUFBS2pCLGNHNUZiZ0IsZUFBbUM2RCxHQUN4QyxNQUNNQyxTQURnQkQsRUFBSUUsWUFBVyxJQUNkQyxNQUFNQyxHQUFpQixXQUFYQSxFQUFFQyxPQUMvQkMsRUFBWUwsR0FBUU0sTUFBTUMsT0FBU1AsR0FBUU0sTUFBTUUsS0FDdkQsR0FBeUIsaUJBQWRILEdBQTBCQSxFQUFVSSxTQUFTLGNBQWUsQ0FDckUsTUFBTS9DLEVBQVEyQyxFQUFVeEMsTUFBTSxLQUN4QjZDLEVBQU1oRCxFQUFNSSxJQUFJLEdBQ2hCc0MsRUFBTzFDLEVBQU1JLElBQUksSUFBSTZDLFFBQVEsUUFBUyxJQUM1QyxHQUFJRCxHQUFPTixFQUFNLE1BQU8sc0JBQXNCTSxLQUFPTixXQUN2RCxDQUNGLENIa0ZxQ1EsQ0FBb0IzQyxJQUFZLEdBQy9EL0MsSUFBV0EsRUFBTzJGLFNBQVMsT0FDN0IzRixHQUFVLEtBRVosTUFBTTRGLEVBQU8sR0FBRzVGLElBQVNvRCxJQUNuQnlDLEVBQVF0QixFQUFTLFFBQVFBLE1BQVdxQixLQUFVLFFBQVFBLElBQ3RERSxFQUFPMUQsRUFDVFksRUFBT1YsSUFBSXdCLEtBQUtpQyxHQUFNLEtBQUtBLEVBQUV0RCxZQUFXaEQsS0FBSyxRQUM3Qyx1Q0FBdUN3QixFQUFLdEIsbUNBQ2hELFVBQ1FxQyxFQUFPZ0UsT0FBTyxHQUFHSCxRQUFZQyxLQUNuQzdHLEVBQU84QyxNQUFNLHFCQUFxQjhELEtBQ2xDNUcsRUFBTzhDLE1BQU0sZ0JBQWdCK0QsSUFDOUIsQ0FBQyxNQUFPaEQsR0FFUCxPQURBN0QsRUFBTzZELE1BQU0sNkJBQThCQSxFQUFnQkssVUFDcEQsQ0FDVCxDQUVBLE1BQU04QyxFQUFVMUIsR0FBVXRELEVBQUtmLElBQy9CLEdBQUkrRixFQUNGLFVBQ1FqRSxFQUFPa0UsT0FBT0QsR0FDcEJoSCxFQUFPOEMsTUFBTSxrQkFBa0JrRSxJQUNqQyxDQUFFLE1BRUFoSCxFQUFPa0gsS0FBSywyQkFBMkJGLElBQ3pDLENBR0YsR0FBSWhGLEVBQUtiLElBRVAsT0FEQW5CLEVBQU84QyxNQUFNLHFCQUNOLEVBR1QsVUFDU2QsRUFBS2hCLE9BQVMrQixFQUFPc0QsS0FBSyxTQUFVckUsRUFBS2hCLFFBQVUrQixFQUFPc0QsUUFDN0RXLFNBRUlqRSxFQUFPc0QsS0FBSyxDQUFFLFNBQVUsTUFFakMsQ0FBQyxNQUFPeEMsR0FFUCxPQURBN0QsRUFBTzZELE1BQU0sOEJBQStCQSxFQUFnQkssVUFDckQsQ0FDVCxDQUdBLE9BREFsRSxFQUFPOEMsTUFBTSxzQkFDTixDQUNULENBeEhvQnFFLENBQVMvRSxFQUFTSixHQUVwQ1AsUUFBUTJGLEtBQUs5RSxFQUFNLEVBQUksRUFDekIsQ0VUTStFLENBQUsvRiJ9
1
+ import{hideBin as e}from"yargs/helpers";import t from"yargs/yargs";import{pino as i}from"pino";import o from"node:child_process";import a from"node:fs/promises";import r from"node:path";import{copy as s}from"fs-extra";import n from"micromatch";import{simpleGit as c}from"simple-git";const d=i({transport:{target:"pino-pretty",options:{colorize:!0}}});const m=r.join("node_modules",".temp","sync-git-repo");const l={dest:{type:"string",alias:"d",describe:"A URL of a destination git repository.",demand:!0},prefix:{type:"string",alias:"p",describe:"A prefix of a commit hash used to generate a commit title, e.g. 'sync <prefix>/<hash>'.\n A typical value is like 'https://github.com/WillBooster/one-way-git-sync/commits'"},branch:{type:"string",alias:"b",describe:"Specify branch of destination repo."},tag:{type:"string",alias:"t",describe:"Specify tag to be created in destination repo."},"tag-hash":{type:"boolean",describe:"Create version+hash tag (e.g. v1.31.5-2-gcdde507). It should be a unique tag."},"tag-version":{type:"boolean",describe:"Create version tag (e.g. v1.31.5). It could be a non-unique tag."},"ignore-patterns":{type:"array",alias:"i",describe:"Exclude the files whose path matches one of the given patterns.\n The patterns are processed by micromatch (https://github.com/micromatch/micromatch).\n You may specify the option multiple times. Default value is \"-i .git -i .github -i node_modules -i '.renovaterc.*'\"",default:[".git",".github","node_modules",".renovaterc.*","renovate.*"]},dry:{type:"boolean",describe:"Enable dry-run mode."},force:{type:"boolean",describe:"Force to overwrite the destination git repository."},verbose:{type:"boolean",alias:"v",describe:"Show details logs."}},g=await t(e(process.argv)).scriptName("one-way-git-sync").options(l).middleware((e=>{d.level=e.verbose?"trace":"info"})).strict().help().argv;await async function(e){await a.mkdir(m,{recursive:!0});const t=await a.mkdtemp(r.join(m,"repo-")),i=await async function(e,t,i=process.cwd()){const m={"--single-branch":null};t.force||(m["--depth"]=1);t.branch&&(m["--branch"]=t.branch);try{await c(i).clone(t.dest,e,m)}catch{delete m["--branch"],delete m["--single-branch"],await c(i).clone(t.dest,e,m),c(e).checkout(["-b",t.branch])}d.debug(`Cloned destination repo on ${e}`);const l=c(e);let g=[];try{g=function(e){if(0===e.all.length)return d.debug("No commit history"),[];for(const t of e.all){const[e,...i]=t.message.replaceAll(/[()]/g,"").split(/[\s/]/);if("sync"===e&&i.length>0)return[t.message,i.at(-1)]}return d.debug(`No sync commit: ${e.all[0].message}`),[]}(await l.log())}catch{}const[p,h]=g;if(h)d.debug(`Extracted a valid commit: ${h}`),d.debug(`(${p})`);else if(!t.force)return d.error("No valid commit in destination repo"),!1;const u=c(i);let f;try{f=await u.log(h?{from:h,to:"HEAD","--first-parent":void 0}:void 0)}catch(e){return d.error(`Failed to get source commit history: ${e.stack}`),!1}const b=f.latest?.hash;if(!b)return d.info("No synchronizable commit"),!0;const[y,w]=await Promise.all([a.readdir(e),a.readdir(i)]),v=[...new Set([...t["ignore-patterns"].map(String),".git"])];for(const t of n.not(y,v))await a.rm(r.join(e,t),{recursive:!0,force:!0});for(const t of n.not(w,v))await s(r.join(i,t),r.join(e,t));await l.add("-A");let $="";if(t["tag-hash"]||t["tag-version"]){const e="git describe --tags --always "+(t["tag-version"]?"--abbrev=0":"");$=o.execSync(e,{cwd:i}).toString().trim()}let x=t.prefix??await async function(e){const t=(await e.getRemotes(!0)).find((e=>"origin"===e.name)),i=t?.refs?.fetch??t?.refs?.push;if("string"==typeof i&&i.includes("github.com")){const e=i.split("/"),t=e.at(-2),o=e.at(-1)?.replace(/.git$/,"");if(t&&o)return`https://github.com/${t}/${o}/commits`}}(u)??"";x&&!x.endsWith("/")&&(x+="/");const k=`${x}${b}`,S=$?`sync ${$} (${k})`:`sync ${k}`,j=h?f.all.map((e=>`* ${e.message}`)).join("\n\n"):`Replace all the files with those of ${t.dest} due to missing sync commit.`;try{await l.commit(`${S}\n\n${j}`),d.debug(`Created a commit: ${S}`),d.debug(` with body: ${j}`)}catch(e){return d.error(`Failed to commit changes: ${e.stack}`),!1}const A=$||t.tag;if(A)try{await l.addTag(A),d.debug(`Created a tag: ${A}`)}catch{d.warn(`Failed to create a tag: ${A}`)}if(t.dry)return d.debug("Finished dry run"),!0;try{await(t.branch?l.push("origin",t.branch):l.push()),A&&await l.push({"--tags":null})}catch(e){return d.error(`Failed to push the commit: ${e.stack}`),!1}return d.debug("Pushed the commit"),!0}(t,e);process.exit(i?0:1)}(g);
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9sb2dnZXIudHMiLCIuLi9zcmMvc3luYy50cyIsIi4uL3NyYy95YXJnc09wdGlvbnMudHMiLCIuLi9zcmMvaW5kZXgudHMiLCIuLi9zcmMvZ2l0SHViLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBpbm8gfSBmcm9tICdwaW5vJztcblxuZXhwb3J0IGNvbnN0IGxvZ2dlciA9IHBpbm8oe1xuICB0cmFuc3BvcnQ6IHtcbiAgICB0YXJnZXQ6ICdwaW5vLXByZXR0eScsXG4gICAgb3B0aW9uczoge1xuICAgICAgY29sb3JpemU6IHRydWUsXG4gICAgfSxcbiAgfSxcbn0pO1xuIiwiaW1wb3J0IGNoaWxkX3Byb2Nlc3MgZnJvbSAnbm9kZTpjaGlsZF9wcm9jZXNzJztcbmltcG9ydCBmcyBmcm9tICdub2RlOmZzL3Byb21pc2VzJztcbmltcG9ydCBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5cbmltcG9ydCB7IGNvcHkgfSBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgbWljcm9tYXRjaCBmcm9tICdtaWNyb21hdGNoJztcbmltcG9ydCB0eXBlIHsgTG9nUmVzdWx0LCBPcHRpb25zLCBTaW1wbGVHaXQsIFRhc2tPcHRpb25zIH0gZnJvbSAnc2ltcGxlLWdpdCc7XG5pbXBvcnQgeyBzaW1wbGVHaXQgfSBmcm9tICdzaW1wbGUtZ2l0JztcbmltcG9ydCB0eXBlIHsgSW5mZXJyZWRPcHRpb25UeXBlcyB9IGZyb20gJ3lhcmdzJztcblxuaW1wb3J0IHsgZ2V0R2l0SHViQ29tbWl0c1VybCB9IGZyb20gJy4vZ2l0SHViLmpzJztcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gJy4vbG9nZ2VyLmpzJztcbmltcG9ydCB0eXBlIHsgeWFyZ3NPcHRpb25zIH0gZnJvbSAnLi95YXJnc09wdGlvbnMuanMnO1xuXG5jb25zdCBzeW5jRGlyUGF0aCA9IHBhdGguam9pbignbm9kZV9tb2R1bGVzJywgJy50ZW1wJywgJ3N5bmMtZ2l0LXJlcG8nKTtcblxuZXhwb3J0IHR5cGUgWWFyZ3NPcHRpb25zID0gSW5mZXJyZWRPcHRpb25UeXBlczx0eXBlb2YgeWFyZ3NPcHRpb25zPjtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHN5bmMob3B0czogWWFyZ3NPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGZzLm1rZGlyKHN5bmNEaXJQYXRoLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgY29uc3QgZGlyUGF0aCA9IGF3YWl0IGZzLm1rZHRlbXAocGF0aC5qb2luKHN5bmNEaXJQYXRoLCAncmVwby0nKSk7XG4gIGNvbnN0IHJldCA9IGF3YWl0IHN5bmNDb3JlKGRpclBhdGgsIG9wdHMpO1xuICAvLyBhd2FpdCBmcy5ybShkaXJQYXRoLCB7IHJlY3Vyc2l2ZTogdHJ1ZSwgZm9yY2U6IHRydWUgfSk7XG4gIHByb2Nlc3MuZXhpdChyZXQgPyAwIDogMSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzeW5jQ29yZShcbiAgZGVzdFJlcG9QYXRoOiBzdHJpbmcsXG4gIG9wdHM6IFlhcmdzT3B0aW9ucyxcbiAgc3JjUmVwb1BhdGggPSBwcm9jZXNzLmN3ZCgpXG4pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHVuaWNvcm4vbm8tbnVsbFxuICBjb25zdCBjbG9uZU9wdHM6IE9wdGlvbnMgPSB7ICctLXNpbmdsZS1icmFuY2gnOiBudWxsIH07XG4gIGlmICghb3B0cy5mb3JjZSkge1xuICAgIGNsb25lT3B0c1snLS1kZXB0aCddID0gMTtcbiAgfVxuICBpZiAob3B0cy5icmFuY2gpIHtcbiAgICBjbG9uZU9wdHNbJy0tYnJhbmNoJ10gPSBvcHRzLmJyYW5jaDtcbiAgfVxuICB0cnkge1xuICAgIGF3YWl0IHNpbXBsZUdpdChzcmNSZXBvUGF0aCkuY2xvbmUob3B0cy5kZXN0LCBkZXN0UmVwb1BhdGgsIGNsb25lT3B0cyk7XG4gIH0gY2F0Y2gge1xuICAgIGRlbGV0ZSBjbG9uZU9wdHNbJy0tYnJhbmNoJ107XG4gICAgZGVsZXRlIGNsb25lT3B0c1snLS1zaW5nbGUtYnJhbmNoJ107XG4gICAgYXdhaXQgc2ltcGxlR2l0KHNyY1JlcG9QYXRoKS5jbG9uZShvcHRzLmRlc3QsIGRlc3RSZXBvUGF0aCwgY2xvbmVPcHRzKTtcbiAgICBzaW1wbGVHaXQoZGVzdFJlcG9QYXRoKS5jaGVja291dChbJy1iJywgb3B0cy5icmFuY2hdIGFzIFRhc2tPcHRpb25zKTtcbiAgfVxuICBsb2dnZXIuZGVidWcoYENsb25lZCBkZXN0aW5hdGlvbiByZXBvIG9uICR7ZGVzdFJlcG9QYXRofWApO1xuXG4gIGNvbnN0IGRzdEdpdDogU2ltcGxlR2l0ID0gc2ltcGxlR2l0KGRlc3RSZXBvUGF0aCk7XG4gIGxldCBjb21taXRIYXNoUmVzdWx0OiBbc3RyaW5nLCBzdHJpbmddIHwgW10gPSBbXTtcbiAgdHJ5IHtcbiAgICBjb25zdCBkc3RMb2cgPSBhd2FpdCBkc3RHaXQubG9nKCk7XG4gICAgY29tbWl0SGFzaFJlc3VsdCA9IGV4dHJhY3RDb21taXRIYXNoKGRzdExvZyk7XG4gIH0gY2F0Y2gge1xuICAgIC8vIGRvIG5vdGhpbmdcbiAgfVxuICBjb25zdCBbaGVhZCwgZnJvbV0gPSBjb21taXRIYXNoUmVzdWx0O1xuICBpZiAoZnJvbSkge1xuICAgIGxvZ2dlci5kZWJ1ZyhgRXh0cmFjdGVkIGEgdmFsaWQgY29tbWl0OiAke2Zyb219YCk7XG4gICAgbG9nZ2VyLmRlYnVnKGAoJHtoZWFkfSlgKTtcbiAgfSBlbHNlIGlmICghb3B0cy5mb3JjZSkge1xuICAgIGxvZ2dlci5lcnJvcignTm8gdmFsaWQgY29tbWl0IGluIGRlc3RpbmF0aW9uIHJlcG8nKTtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBzcmNHaXQ6IFNpbXBsZUdpdCA9IHNpbXBsZUdpdChzcmNSZXBvUGF0aCk7XG4gIGxldCBzcmNMb2c6IExvZ1Jlc3VsdDtcbiAgdHJ5IHtcbiAgICAvLyAnLS1maXJzdC1wYXJlbnQnIGhpZGVzIGNoaWxkcmVuIGNvbW1pdHMgb2YgbWVyZ2UgY29tbWl0c1xuICAgIHNyY0xvZyA9IGF3YWl0IHNyY0dpdC5sb2coZnJvbSA/IHsgZnJvbSwgdG86ICdIRUFEJywgJy0tZmlyc3QtcGFyZW50JzogdW5kZWZpbmVkIH0gOiB1bmRlZmluZWQpO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGxvZ2dlci5lcnJvcihgRmFpbGVkIHRvIGdldCBzb3VyY2UgY29tbWl0IGhpc3Rvcnk6ICR7KGVycm9yIGFzIEVycm9yKS5zdGFja31gKTtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBsYXRlc3RIYXNoID0gc3JjTG9nLmxhdGVzdD8uaGFzaDtcbiAgaWYgKCFsYXRlc3RIYXNoKSB7XG4gICAgbG9nZ2VyLmluZm8oJ05vIHN5bmNocm9uaXphYmxlIGNvbW1pdCcpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY29uc3QgW2Rlc3RGaWxlcywgc3JjRmlsZXNdID0gYXdhaXQgUHJvbWlzZS5hbGwoW2ZzLnJlYWRkaXIoZGVzdFJlcG9QYXRoKSwgZnMucmVhZGRpcihzcmNSZXBvUGF0aCldKTtcbiAgLy8gRm9yY2UgdG8gaWdub3JlIC5naXQgZGlyZWN0b3J5XG4gIGNvbnN0IGlnbm9yZVBhdHRlcm5zID0gWy4uLm5ldyBTZXQoWy4uLm9wdHNbJ2lnbm9yZS1wYXR0ZXJucyddLm1hcChTdHJpbmcpLCAnLmdpdCddKV07XG4gIGZvciAoY29uc3QgZGVzdEZpbGUgb2YgbWljcm9tYXRjaC5ub3QoZGVzdEZpbGVzLCBpZ25vcmVQYXR0ZXJucykpIHtcbiAgICBhd2FpdCBmcy5ybShwYXRoLmpvaW4oZGVzdFJlcG9QYXRoLCBkZXN0RmlsZSksIHsgcmVjdXJzaXZlOiB0cnVlLCBmb3JjZTogdHJ1ZSB9KTtcbiAgfVxuICBmb3IgKGNvbnN0IHNyY0ZpbGUgb2YgbWljcm9tYXRjaC5ub3Qoc3JjRmlsZXMsIGlnbm9yZVBhdHRlcm5zKSkge1xuICAgIGF3YWl0IGNvcHkocGF0aC5qb2luKHNyY1JlcG9QYXRoLCBzcmNGaWxlKSwgcGF0aC5qb2luKGRlc3RSZXBvUGF0aCwgc3JjRmlsZSkpO1xuICB9XG4gIGF3YWl0IGRzdEdpdC5hZGQoJy1BJyk7XG5cbiAgbGV0IHNyY1RhZyA9ICcnO1xuICBpZiAob3B0c1sndGFnLWhhc2gnXSB8fCBvcHRzWyd0YWctdmVyc2lvbiddKSB7XG4gICAgLy8gZS5nLiBgLS1hYmJyZXY9MGAgY2hhbmdlcyBgdjEuMzEuNS0yLWdjZGRlNTA3YCB0byBgdjEuMzEuNWBcbiAgICBjb25zdCBkZXNjcmliZUNvbW1hbmQgPSBgZ2l0IGRlc2NyaWJlIC0tdGFncyAtLWFsd2F5cyAke29wdHNbJ3RhZy12ZXJzaW9uJ10gPyAnLS1hYmJyZXY9MCcgOiAnJ31gO1xuICAgIHNyY1RhZyA9IGNoaWxkX3Byb2Nlc3MuZXhlY1N5bmMoZGVzY3JpYmVDb21tYW5kLCB7IGN3ZDogc3JjUmVwb1BhdGggfSkudG9TdHJpbmcoKS50cmltKCk7XG4gIH1cbiAgbGV0IHByZWZpeCA9IG9wdHMucHJlZml4ID8/IChhd2FpdCBnZXRHaXRIdWJDb21taXRzVXJsKHNyY0dpdCkpID8/ICcnO1xuICBpZiAocHJlZml4ICYmICFwcmVmaXguZW5kc1dpdGgoJy8nKSkge1xuICAgIHByZWZpeCArPSAnLyc7XG4gIH1cbiAgY29uc3QgbGluayA9IGAke3ByZWZpeH0ke2xhdGVzdEhhc2h9YDtcbiAgY29uc3QgdGl0bGUgPSBzcmNUYWcgPyBgc3luYyAke3NyY1RhZ30gKCR7bGlua30pYCA6IGBzeW5jICR7bGlua31gO1xuICBjb25zdCBib2R5ID0gZnJvbVxuICAgID8gc3JjTG9nLmFsbC5tYXAoKGwpID0+IGAqICR7bC5tZXNzYWdlfWApLmpvaW4oJ1xcblxcbicpXG4gICAgOiBgUmVwbGFjZSBhbGwgdGhlIGZpbGVzIHdpdGggdGhvc2Ugb2YgJHtvcHRzLmRlc3R9IGR1ZSB0byBtaXNzaW5nIHN5bmMgY29tbWl0LmA7XG4gIHRyeSB7XG4gICAgYXdhaXQgZHN0R2l0LmNvbW1pdChgJHt0aXRsZX1cXG5cXG4ke2JvZHl9YCk7XG4gICAgbG9nZ2VyLmRlYnVnKGBDcmVhdGVkIGEgY29tbWl0OiAke3RpdGxlfWApO1xuICAgIGxvZ2dlci5kZWJ1ZyhgICB3aXRoIGJvZHk6ICR7Ym9keX1gKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBsb2dnZXIuZXJyb3IoYEZhaWxlZCB0byBjb21taXQgY2hhbmdlczogJHsoZXJyb3IgYXMgRXJyb3IpLnN0YWNrfWApO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGRlc3RUYWcgPSBzcmNUYWcgfHwgb3B0cy50YWc7XG4gIGlmIChkZXN0VGFnKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGRzdEdpdC5hZGRUYWcoZGVzdFRhZyk7XG4gICAgICBsb2dnZXIuZGVidWcoYENyZWF0ZWQgYSB0YWc6ICR7ZGVzdFRhZ31gKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIElnbm9yZSB0aGUgZXJyb3Igc2luY2UgYC0tYWJicmV2PTBgIG1heSB5aWVsZCBhIHRhZyB0aGF0IGFscmVhZHkgZXhpc3RzXG4gICAgICBsb2dnZXIud2FybihgRmFpbGVkIHRvIGNyZWF0ZSBhIHRhZzogJHtkZXN0VGFnfWApO1xuICAgIH1cbiAgfVxuXG4gIGlmIChvcHRzLmRyeSkge1xuICAgIGxvZ2dlci5kZWJ1ZygnRmluaXNoZWQgZHJ5IHJ1bicpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCAob3B0cy5icmFuY2ggPyBkc3RHaXQucHVzaCgnb3JpZ2luJywgb3B0cy5icmFuY2gpIDogZHN0R2l0LnB1c2goKSk7XG4gICAgaWYgKGRlc3RUYWcpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL25vLW51bGxcbiAgICAgIGF3YWl0IGRzdEdpdC5wdXNoKHsgJy0tdGFncyc6IG51bGwgfSk7XG4gICAgfVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGxvZ2dlci5lcnJvcihgRmFpbGVkIHRvIHB1c2ggdGhlIGNvbW1pdDogJHsoZXJyb3IgYXMgRXJyb3IpLnN0YWNrfWApO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGxvZ2dlci5kZWJ1ZygnUHVzaGVkIHRoZSBjb21taXQnKTtcbiAgcmV0dXJuIHRydWU7XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RDb21taXRIYXNoKGxvZ1Jlc3VsdDogTG9nUmVzdWx0KTogW3N0cmluZywgc3RyaW5nXSB8IFtdIHtcbiAgaWYgKGxvZ1Jlc3VsdC5hbGwubGVuZ3RoID09PSAwKSB7XG4gICAgbG9nZ2VyLmRlYnVnKCdObyBjb21taXQgaGlzdG9yeScpO1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIGZvciAoY29uc3QgbG9nIG9mIGxvZ1Jlc3VsdC5hbGwpIHtcbiAgICBjb25zdCBbaGVhZCwgLi4ud29yZHNdID0gbG9nLm1lc3NhZ2UucmVwbGFjZUFsbCgvWygpXS9nLCAnJykuc3BsaXQoL1tcXHMvXS8pO1xuICAgIGlmIChoZWFkID09PSAnc3luYycgJiYgd29yZHMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIFtsb2cubWVzc2FnZSwgd29yZHMuYXQoLTEpIGFzIHN0cmluZ107XG4gICAgfVxuICB9XG4gIGxvZ2dlci5kZWJ1ZyhgTm8gc3luYyBjb21taXQ6ICR7bG9nUmVzdWx0LmFsbFswXS5tZXNzYWdlfWApO1xuICByZXR1cm4gW107XG59XG4iLCJleHBvcnQgY29uc3QgeWFyZ3NPcHRpb25zID0ge1xuICBkZXN0OiB7XG4gICAgdHlwZTogJ3N0cmluZycsXG4gICAgYWxpYXM6ICdkJyxcbiAgICBkZXNjcmliZTogJ0EgVVJMIG9mIGEgZGVzdGluYXRpb24gZ2l0IHJlcG9zaXRvcnkuJyxcbiAgICBkZW1hbmQ6IHRydWUsXG4gIH0sXG4gIHByZWZpeDoge1xuICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIGFsaWFzOiAncCcsXG4gICAgZGVzY3JpYmU6IGBBIHByZWZpeCBvZiBhIGNvbW1pdCBoYXNoIHVzZWQgdG8gZ2VuZXJhdGUgYSBjb21taXQgdGl0bGUsIGUuZy4gJ3N5bmMgPHByZWZpeD4vPGhhc2g+Jy5cbiAgICAgICAgICAgICAgIEEgdHlwaWNhbCB2YWx1ZSBpcyBsaWtlICdodHRwczovL2dpdGh1Yi5jb20vV2lsbEJvb3N0ZXIvb25lLXdheS1naXQtc3luYy9jb21taXRzJ2AsXG4gIH0sXG4gIGJyYW5jaDoge1xuICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIGFsaWFzOiAnYicsXG4gICAgZGVzY3JpYmU6ICdTcGVjaWZ5IGJyYW5jaCBvZiBkZXN0aW5hdGlvbiByZXBvLicsXG4gIH0sXG4gIHRhZzoge1xuICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgIGFsaWFzOiAndCcsXG4gICAgZGVzY3JpYmU6ICdTcGVjaWZ5IHRhZyB0byBiZSBjcmVhdGVkIGluIGRlc3RpbmF0aW9uIHJlcG8uJyxcbiAgfSxcbiAgJ3RhZy1oYXNoJzoge1xuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZXNjcmliZTogJ0NyZWF0ZSB2ZXJzaW9uK2hhc2ggdGFnIChlLmcuIHYxLjMxLjUtMi1nY2RkZTUwNykuIEl0IHNob3VsZCBiZSBhIHVuaXF1ZSB0YWcuJyxcbiAgfSxcbiAgJ3RhZy12ZXJzaW9uJzoge1xuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZXNjcmliZTogJ0NyZWF0ZSB2ZXJzaW9uIHRhZyAoZS5nLiB2MS4zMS41KS4gSXQgY291bGQgYmUgYSBub24tdW5pcXVlIHRhZy4nLFxuICB9LFxuICAnaWdub3JlLXBhdHRlcm5zJzoge1xuICAgIHR5cGU6ICdhcnJheScsXG4gICAgYWxpYXM6ICdpJyxcbiAgICBkZXNjcmliZTogYEV4Y2x1ZGUgdGhlIGZpbGVzIHdob3NlIHBhdGggbWF0Y2hlcyBvbmUgb2YgdGhlIGdpdmVuIHBhdHRlcm5zLlxuICAgICAgICAgICAgICAgVGhlIHBhdHRlcm5zIGFyZSBwcm9jZXNzZWQgYnkgbWljcm9tYXRjaCAoaHR0cHM6Ly9naXRodWIuY29tL21pY3JvbWF0Y2gvbWljcm9tYXRjaCkuXG4gICAgICAgICAgICAgICBZb3UgbWF5IHNwZWNpZnkgdGhlIG9wdGlvbiBtdWx0aXBsZSB0aW1lcy4gRGVmYXVsdCB2YWx1ZSBpcyBcIi1pIC5naXQgLWkgLmdpdGh1YiAtaSBub2RlX21vZHVsZXMgLWkgJy5yZW5vdmF0ZXJjLionXCJgLFxuICAgIGRlZmF1bHQ6IFsnLmdpdCcsICcuZ2l0aHViJywgJ25vZGVfbW9kdWxlcycsICcucmVub3ZhdGVyYy4qJywgJ3Jlbm92YXRlLionXSxcbiAgfSxcbiAgZHJ5OiB7XG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICAgIGRlc2NyaWJlOiAnRW5hYmxlIGRyeS1ydW4gbW9kZS4nLFxuICB9LFxuICBmb3JjZToge1xuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZXNjcmliZTogJ0ZvcmNlIHRvIG92ZXJ3cml0ZSB0aGUgZGVzdGluYXRpb24gZ2l0IHJlcG9zaXRvcnkuJyxcbiAgfSxcbiAgdmVyYm9zZToge1xuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBhbGlhczogJ3YnLFxuICAgIGRlc2NyaWJlOiAnU2hvdyBkZXRhaWxzIGxvZ3MuJyxcbiAgfSxcbn0gYXMgY29uc3Q7XG4iLCJpbXBvcnQgeyBoaWRlQmluIH0gZnJvbSAneWFyZ3MvaGVscGVycyc7XG5pbXBvcnQgeWFyZ3MgZnJvbSAneWFyZ3MveWFyZ3MnO1xuXG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tICcuL2xvZ2dlci5qcyc7XG5pbXBvcnQgeyBzeW5jIH0gZnJvbSAnLi9zeW5jLmpzJztcbmltcG9ydCB7IHlhcmdzT3B0aW9ucyB9IGZyb20gJy4veWFyZ3NPcHRpb25zLmpzJztcblxuY29uc3QgYXJndiA9IGF3YWl0IHlhcmdzKGhpZGVCaW4ocHJvY2Vzcy5hcmd2KSlcbiAgLnNjcmlwdE5hbWUoJ29uZS13YXktZ2l0LXN5bmMnKVxuICAub3B0aW9ucyh5YXJnc09wdGlvbnMpXG4gIC5taWRkbGV3YXJlKChhcmd2KSA9PiB7XG4gICAgbG9nZ2VyLmxldmVsID0gYXJndi52ZXJib3NlID8gJ3RyYWNlJyA6ICdpbmZvJztcbiAgfSlcbiAgLnN0cmljdCgpXG4gIC5oZWxwKCkuYXJndjtcbmF3YWl0IHN5bmMoYXJndik7XG4iLCJpbXBvcnQgdHlwZSB7IFNpbXBsZUdpdCB9IGZyb20gJ3NpbXBsZS1naXQnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0R2l0SHViQ29tbWl0c1VybChnaXQ6IFNpbXBsZUdpdCk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gIGNvbnN0IHJlbW90ZXMgPSBhd2FpdCBnaXQuZ2V0UmVtb3Rlcyh0cnVlKTtcbiAgY29uc3Qgb3JpZ2luID0gcmVtb3Rlcy5maW5kKChyKSA9PiByLm5hbWUgPT09ICdvcmlnaW4nKTtcbiAgY29uc3QgcmVtb3RlVXJsID0gb3JpZ2luPy5yZWZzPy5mZXRjaCA/PyBvcmlnaW4/LnJlZnM/LnB1c2g7XG4gIGlmICh0eXBlb2YgcmVtb3RlVXJsID09PSAnc3RyaW5nJyAmJiByZW1vdGVVcmwuaW5jbHVkZXMoJ2dpdGh1Yi5jb20nKSkge1xuICAgIGNvbnN0IHdvcmRzID0gcmVtb3RlVXJsLnNwbGl0KCcvJyk7XG4gICAgY29uc3Qgb3JnID0gd29yZHMuYXQoLTIpO1xuICAgIGNvbnN0IG5hbWUgPSB3b3Jkcy5hdCgtMSk/LnJlcGxhY2UoLy5naXQkLywgJycpO1xuICAgIGlmIChvcmcgJiYgbmFtZSkgcmV0dXJuIGBodHRwczovL2dpdGh1Yi5jb20vJHtvcmd9LyR7bmFtZX0vY29tbWl0c2A7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJsb2dnZXIiLCJwaW5vIiwidHJhbnNwb3J0IiwidGFyZ2V0Iiwib3B0aW9ucyIsImNvbG9yaXplIiwic3luY0RpclBhdGgiLCJwYXRoIiwiam9pbiIsInlhcmdzT3B0aW9ucyIsImRlc3QiLCJ0eXBlIiwiYWxpYXMiLCJkZXNjcmliZSIsImRlbWFuZCIsInByZWZpeCIsImJyYW5jaCIsInRhZyIsImRlZmF1bHQiLCJkcnkiLCJmb3JjZSIsInZlcmJvc2UiLCJhcmd2IiwieWFyZ3MiLCJoaWRlQmluIiwicHJvY2VzcyIsInNjcmlwdE5hbWUiLCJtaWRkbGV3YXJlIiwibGV2ZWwiLCJzdHJpY3QiLCJoZWxwIiwiYXN5bmMiLCJvcHRzIiwiZnMiLCJta2RpciIsInJlY3Vyc2l2ZSIsImRpclBhdGgiLCJta2R0ZW1wIiwicmV0IiwiZGVzdFJlcG9QYXRoIiwic3JjUmVwb1BhdGgiLCJjd2QiLCJjbG9uZU9wdHMiLCJzaW1wbGVHaXQiLCJjbG9uZSIsImNoZWNrb3V0IiwiZGVidWciLCJkc3RHaXQiLCJjb21taXRIYXNoUmVzdWx0IiwibG9nUmVzdWx0IiwiYWxsIiwibGVuZ3RoIiwibG9nIiwiaGVhZCIsIndvcmRzIiwibWVzc2FnZSIsInJlcGxhY2VBbGwiLCJzcGxpdCIsImF0IiwiZXh0cmFjdENvbW1pdEhhc2giLCJmcm9tIiwiZXJyb3IiLCJzcmNHaXQiLCJzcmNMb2ciLCJ0byIsInVuZGVmaW5lZCIsInN0YWNrIiwibGF0ZXN0SGFzaCIsImxhdGVzdCIsImhhc2giLCJpbmZvIiwiZGVzdEZpbGVzIiwic3JjRmlsZXMiLCJQcm9taXNlIiwicmVhZGRpciIsImlnbm9yZVBhdHRlcm5zIiwiU2V0IiwibWFwIiwiU3RyaW5nIiwiZGVzdEZpbGUiLCJtaWNyb21hdGNoIiwibm90Iiwicm0iLCJzcmNGaWxlIiwiY29weSIsImFkZCIsInNyY1RhZyIsImRlc2NyaWJlQ29tbWFuZCIsImNoaWxkX3Byb2Nlc3MiLCJleGVjU3luYyIsInRvU3RyaW5nIiwidHJpbSIsImdpdCIsIm9yaWdpbiIsImdldFJlbW90ZXMiLCJmaW5kIiwiciIsIm5hbWUiLCJyZW1vdGVVcmwiLCJyZWZzIiwiZmV0Y2giLCJwdXNoIiwiaW5jbHVkZXMiLCJvcmciLCJyZXBsYWNlIiwiZ2V0R2l0SHViQ29tbWl0c1VybCIsImVuZHNXaXRoIiwibGluayIsInRpdGxlIiwiYm9keSIsImwiLCJjb21taXQiLCJkZXN0VGFnIiwiYWRkVGFnIiwid2FybiIsInN5bmNDb3JlIiwiZXhpdCIsInN5bmMiXSwibWFwcGluZ3MiOiIyUkFFTyxNQUFNQSxFQUFTQyxFQUFLLENBQ3pCQyxVQUFXLENBQ1RDLE9BQVEsY0FDUkMsUUFBUyxDQUNQQyxVQUFVLE1DUWhCLE1BQU1DLEVBQWNDLEVBQUtDLEtBQUssZUFBZ0IsUUFBUyxpQkNkaEQsTUFBTUMsRUFBZSxDQUMxQkMsS0FBTSxDQUNKQyxLQUFNLFNBQ05DLE1BQU8sSUFDUEMsU0FBVSx5Q0FDVkMsUUFBUSxHQUVWQyxPQUFRLENBQ05KLEtBQU0sU0FDTkMsTUFBTyxJQUNQQyxTQUFVLDZMQUdaRyxPQUFRLENBQ05MLEtBQU0sU0FDTkMsTUFBTyxJQUNQQyxTQUFVLHVDQUVaSSxJQUFLLENBQ0hOLEtBQU0sU0FDTkMsTUFBTyxJQUNQQyxTQUFVLGtEQUVaLFdBQVksQ0FDVkYsS0FBTSxVQUNORSxTQUFVLGlGQUVaLGNBQWUsQ0FDYkYsS0FBTSxVQUNORSxTQUFVLG9FQUVaLGtCQUFtQixDQUNqQkYsS0FBTSxRQUNOQyxNQUFPLElBQ1BDLFNBQVUsNlNBR1ZLLFFBQVMsQ0FBQyxPQUFRLFVBQVcsZUFBZ0IsZ0JBQWlCLGVBRWhFQyxJQUFLLENBQ0hSLEtBQU0sVUFDTkUsU0FBVSx3QkFFWk8sTUFBTyxDQUNMVCxLQUFNLFVBQ05FLFNBQVUsc0RBRVpRLFFBQVMsQ0FDUFYsS0FBTSxVQUNOQyxNQUFPLElBQ1BDLFNBQVUsdUJDM0NSUyxRQUFhQyxFQUFNQyxFQUFRQyxRQUFRSCxPQUN0Q0ksV0FBVyxvQkFDWHRCLFFBQVFLLEdBQ1JrQixZQUFZTCxJQUNYdEIsRUFBTzRCLE1BQVFOLEVBQUtELFFBQVUsUUFBVSxNQUFNLElBRS9DUSxTQUNBQyxPQUFPUixXRklIUyxlQUFvQkMsU0FDbkJDLEVBQUdDLE1BQU01QixFQUFhLENBQUU2QixXQUFXLElBQ3pDLE1BQU1DLFFBQWdCSCxFQUFHSSxRQUFROUIsRUFBS0MsS0FBS0YsRUFBYSxVQUNsRGdDLFFBS0RQLGVBQ0xRLEVBQ0FQLEVBQ0FRLEVBQWNmLFFBQVFnQixPQUd0QixNQUFNQyxFQUFxQixDQUFFLGtCQUFtQixNQUMzQ1YsRUFBS1osUUFDUnNCLEVBQVUsV0FBYSxHQUVyQlYsRUFBS2hCLFNBQ1AwQixFQUFVLFlBQWNWLEVBQUtoQixRQUUvQixVQUNRMkIsRUFBVUgsR0FBYUksTUFBTVosRUFBS3RCLEtBQU02QixFQUFjRyxFQUM5RCxDQUFFLGFBQ09BLEVBQVUsbUJBQ1ZBLEVBQVUseUJBQ1hDLEVBQVVILEdBQWFJLE1BQU1aLEVBQUt0QixLQUFNNkIsRUFBY0csR0FDNURDLEVBQVVKLEdBQWNNLFNBQVMsQ0FBQyxLQUFNYixFQUFLaEIsUUFDL0MsQ0FDQWhCLEVBQU84QyxNQUFNLDhCQUE4QlAsS0FFM0MsTUFBTVEsRUFBb0JKLEVBQVVKLEdBQ3BDLElBQUlTLEVBQTBDLEdBQzlDLElBRUVBLEVBK0ZKLFNBQTJCQyxHQUN6QixHQUE2QixJQUF6QkEsRUFBVUMsSUFBSUMsT0FFaEIsT0FEQW5ELEVBQU84QyxNQUFNLHFCQUNOLEdBR1QsSUFBSyxNQUFNTSxLQUFPSCxFQUFVQyxJQUFLLENBQy9CLE1BQU9HLEtBQVNDLEdBQVNGLEVBQUlHLFFBQVFDLFdBQVcsUUFBUyxJQUFJQyxNQUFNLFNBQ25FLEdBQWEsU0FBVEosR0FBbUJDLEVBQU1ILE9BQVMsRUFDcEMsTUFBTyxDQUFDQyxFQUFJRyxRQUFTRCxFQUFNSSxJQUFJLEdBRW5DLENBRUEsT0FEQTFELEVBQU84QyxNQUFNLG1CQUFtQkcsRUFBVUMsSUFBSSxHQUFHSyxXQUMxQyxFQUNULENBN0d1QkksT0FERVosRUFBT0ssTUFFOUIsQ0FBRSxNQUNBLENBRUYsTUFBT0MsRUFBTU8sR0FBUVosRUFDckIsR0FBSVksRUFDRjVELEVBQU84QyxNQUFNLDZCQUE2QmMsS0FDMUM1RCxFQUFPOEMsTUFBTSxJQUFJTyxXQUNaLElBQUtyQixFQUFLWixNQUVmLE9BREFwQixFQUFPNkQsTUFBTSx3Q0FDTixFQUdULE1BQU1DLEVBQW9CbkIsRUFBVUgsR0FDcEMsSUFBSXVCLEVBQ0osSUFFRUEsUUFBZUQsRUFBT1YsSUFBSVEsRUFBTyxDQUFFQSxPQUFNSSxHQUFJLE9BQVEsc0JBQWtCQyxRQUFjQSxFQUN0RixDQUFDLE1BQU9KLEdBRVAsT0FEQTdELEVBQU82RCxNQUFNLHdDQUF5Q0EsRUFBZ0JLLFVBQy9ELENBQ1QsQ0FFQSxNQUFNQyxFQUFhSixFQUFPSyxRQUFRQyxLQUNsQyxJQUFLRixFQUVILE9BREFuRSxFQUFPc0UsS0FBSyw2QkFDTCxFQUdULE1BQU9DLEVBQVdDLFNBQWtCQyxRQUFRdkIsSUFBSSxDQUFDakIsRUFBR3lDLFFBQVFuQyxHQUFlTixFQUFHeUMsUUFBUWxDLEtBRWhGbUMsRUFBaUIsSUFBSSxJQUFJQyxJQUFJLElBQUk1QyxFQUFLLG1CQUFtQjZDLElBQUlDLFFBQVMsVUFDNUUsSUFBSyxNQUFNQyxLQUFZQyxFQUFXQyxJQUFJVixFQUFXSSxTQUN6QzFDLEVBQUdpRCxHQUFHM0UsRUFBS0MsS0FBSytCLEVBQWN3QyxHQUFXLENBQUU1QyxXQUFXLEVBQU1mLE9BQU8sSUFFM0UsSUFBSyxNQUFNK0QsS0FBV0gsRUFBV0MsSUFBSVQsRUFBVUcsU0FDdkNTLEVBQUs3RSxFQUFLQyxLQUFLZ0MsRUFBYTJDLEdBQVU1RSxFQUFLQyxLQUFLK0IsRUFBYzRDLFVBRWhFcEMsRUFBT3NDLElBQUksTUFFakIsSUFBSUMsRUFBUyxHQUNiLEdBQUl0RCxFQUFLLGFBQWVBLEVBQUssZUFBZ0IsQ0FFM0MsTUFBTXVELEVBQWtCLGlDQUFnQ3ZELEVBQUssZUFBaUIsYUFBZSxJQUM3RnNELEVBQVNFLEVBQWNDLFNBQVNGLEVBQWlCLENBQUU5QyxJQUFLRCxJQUFla0QsV0FBV0MsTUFDcEYsQ0FDQSxJQUFJNUUsRUFBU2lCLEVBQUtqQixjR2pHYmdCLGVBQW1DNkQsR0FDeEMsTUFDTUMsU0FEZ0JELEVBQUlFLFlBQVcsSUFDZEMsTUFBTUMsR0FBaUIsV0FBWEEsRUFBRUMsT0FDL0JDLEVBQVlMLEdBQVFNLE1BQU1DLE9BQVNQLEdBQVFNLE1BQU1FLEtBQ3ZELEdBQXlCLGlCQUFkSCxHQUEwQkEsRUFBVUksU0FBUyxjQUFlLENBQ3JFLE1BQU1oRCxFQUFRNEMsRUFBVXpDLE1BQU0sS0FDeEI4QyxFQUFNakQsRUFBTUksSUFBSSxHQUNoQnVDLEVBQU8zQyxFQUFNSSxJQUFJLElBQUk4QyxRQUFRLFFBQVMsSUFDNUMsR0FBSUQsR0FBT04sRUFBTSxNQUFPLHNCQUFzQk0sS0FBT04sV0FDdkQsQ0FDRixDSHVGcUNRLENBQW9CM0MsSUFBWSxHQUMvRC9DLElBQVdBLEVBQU8yRixTQUFTLE9BQzdCM0YsR0FBVSxLQUVaLE1BQU00RixFQUFPLEdBQUc1RixJQUFTb0QsSUFDbkJ5QyxFQUFRdEIsRUFBUyxRQUFRQSxNQUFXcUIsS0FBVSxRQUFRQSxJQUN0REUsRUFBT2pELEVBQ1RHLEVBQU9iLElBQUkyQixLQUFLaUMsR0FBTSxLQUFLQSxFQUFFdkQsWUFBVy9DLEtBQUssUUFDN0MsdUNBQXVDd0IsRUFBS3RCLG1DQUNoRCxVQUNRcUMsRUFBT2dFLE9BQU8sR0FBR0gsUUFBWUMsS0FDbkM3RyxFQUFPOEMsTUFBTSxxQkFBcUI4RCxLQUNsQzVHLEVBQU84QyxNQUFNLGdCQUFnQitELElBQzlCLENBQUMsTUFBT2hELEdBRVAsT0FEQTdELEVBQU82RCxNQUFNLDZCQUE4QkEsRUFBZ0JLLFVBQ3BELENBQ1QsQ0FFQSxNQUFNOEMsRUFBVTFCLEdBQVV0RCxFQUFLZixJQUMvQixHQUFJK0YsRUFDRixVQUNRakUsRUFBT2tFLE9BQU9ELEdBQ3BCaEgsRUFBTzhDLE1BQU0sa0JBQWtCa0UsSUFDakMsQ0FBRSxNQUVBaEgsRUFBT2tILEtBQUssMkJBQTJCRixJQUN6QyxDQUdGLEdBQUloRixFQUFLYixJQUVQLE9BREFuQixFQUFPOEMsTUFBTSxxQkFDTixFQUdULFVBQ1NkLEVBQUtoQixPQUFTK0IsRUFBT3NELEtBQUssU0FBVXJFLEVBQUtoQixRQUFVK0IsRUFBT3NELFFBQzdEVyxTQUVJakUsRUFBT3NELEtBQUssQ0FBRSxTQUFVLE1BRWpDLENBQUMsTUFBT3hDLEdBRVAsT0FEQTdELEVBQU82RCxNQUFNLDhCQUErQkEsRUFBZ0JLLFVBQ3JELENBQ1QsQ0FHQSxPQURBbEUsRUFBTzhDLE1BQU0sc0JBQ04sQ0FDVCxDQTdIb0JxRSxDQUFTL0UsRUFBU0osR0FFcENQLFFBQVEyRixLQUFLOUUsRUFBTSxFQUFJLEVBQ3pCLENFVE0rRSxDQUFLL0YifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "one-way-git-sync",
3
- "version": "6.0.7",
3
+ "version": "6.0.8",
4
4
  "description": "A tool for synchronizing a destination git repository with a source git repository SAFELY.",
5
5
  "keywords": [
6
6
  "git",
@@ -47,8 +47,8 @@
47
47
  "@types/micromatch": "4.0.7",
48
48
  "@types/semantic-release": "20.0.6",
49
49
  "@types/yargs": "17.0.32",
50
- "@typescript-eslint/eslint-plugin": "7.11.0",
51
- "@typescript-eslint/parser": "7.11.0",
50
+ "@typescript-eslint/eslint-plugin": "7.12.0",
51
+ "@typescript-eslint/parser": "7.12.0",
52
52
  "@willbooster/eslint-config-ts": "10.6.0",
53
53
  "@willbooster/prettier-config": "9.1.2",
54
54
  "build-ts": "13.1.8",
@@ -63,7 +63,7 @@
63
63
  "husky": "9.0.11",
64
64
  "lint-staged": "15.2.5",
65
65
  "pinst": "3.0.0",
66
- "prettier": "3.2.5",
66
+ "prettier": "3.3.1",
67
67
  "semantic-release": "23.1.1",
68
68
  "sort-package-json": "2.10.0",
69
69
  "typescript": "5.4.5",