diff --git a/dist/index.js b/dist/index.js index 388ef02..14e671c 100644 --- a/dist/index.js +++ b/dist/index.js @@ -3967,7 +3967,7 @@ async function listAllFilesAsAdded() { } exports.listAllFilesAsAdded = listAllFilesAsAdded; async function getCurrentRef() { - core.startGroup(`Determining current ref`); + core.startGroup(`Get current git ref`); try { const branch = (await exec_1.default('git', ['branch', '--show-current'])).stdout.trim(); if (branch) { @@ -4010,7 +4010,7 @@ async function getCommitCount() { } async function getLocalRef(shortName) { if (isGitSha(shortName)) { - return await hasCommit(shortName) ? shortName : undefined; + return (await hasCommit(shortName)) ? shortName : undefined; } const output = (await exec_1.default('git', ['show-ref', shortName], { ignoreReturnCode: true })).stdout; const refs = output @@ -4032,14 +4032,14 @@ async function ensureRefAvailable(name) { let ref = await getLocalRef(name); if (ref === undefined) { await exec_1.default('git', ['fetch', '--depth=1', '--no-tags', 'origin', name]); - } - ref = await getLocalRef(name); - if (ref === undefined) { - await exec_1.default('git', ['fetch', '--depth=1', '--tags', 'origin', name]); - } - ref = await getLocalRef(name); - if (ref === undefined) { - throw new Error(`Could not determine what is ${name} - fetch works but it's not a branch, tag or commit SHA`); + ref = await getLocalRef(name); + if (ref === undefined) { + await exec_1.default('git', ['fetch', '--depth=1', '--tags', 'origin', name]); + ref = await getLocalRef(name); + if (ref === undefined) { + throw new Error(`Could not determine what is ${name} - fetch works but it's not a branch, tag or commit SHA`); + } + } } return ref; } diff --git a/src/git.ts b/src/git.ts index 4a7572d..f08d2e5 100644 --- a/src/git.ts +++ b/src/git.ts @@ -163,7 +163,7 @@ export async function listAllFilesAsAdded(): Promise { } export async function getCurrentRef(): Promise { - core.startGroup(`Determining current ref`) + core.startGroup(`Get current git ref`) try { const branch = (await exec('git', ['branch', '--show-current'])).stdout.trim() if (branch) { @@ -236,15 +236,16 @@ async function ensureRefAvailable(name: string): Promise { let ref = await getLocalRef(name) if (ref === undefined) { await exec('git', ['fetch', '--depth=1', '--no-tags', 'origin', name]) + ref = await getLocalRef(name) + if (ref === undefined) { + await exec('git', ['fetch', '--depth=1', '--tags', 'origin', name]) + ref = await getLocalRef(name) + if (ref === undefined) { + throw new Error(`Could not determine what is ${name} - fetch works but it's not a branch, tag or commit SHA`) + } + } } - ref = await getLocalRef(name) - if (ref === undefined) { - await exec('git', ['fetch', '--depth=1', '--tags', 'origin', name]) - } - ref = await getLocalRef(name) - if (ref === undefined) { - throw new Error(`Could not determine what is ${name} - fetch works but it's not a branch, tag or commit SHA`) - } + return ref } finally { core.endGroup()