Skip to content

Commit

Permalink
Bump MinimumGitVersion to 2.28 due to #1386
Browse files Browse the repository at this point in the history
  • Loading branch information
jww3 committed Mar 13, 2024
1 parent 64dbc81 commit 425626d
Show file tree
Hide file tree
Showing 6 changed files with 12 additions and 27 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Only a single commit is fetched by default, for the ref/SHA that triggered the w

The auth token is persisted in the local git config. This enables your scripts to run authenticated git commands. The token is removed during post-job cleanup. Set `persist-credentials: false` to opt-out.

When Git 2.25 or higher is not in your PATH, falls back to the REST API to download the files.
When Git 2.28 or higher is not in your PATH, falls back to the REST API to download the files.

# What's new

Expand Down
6 changes: 3 additions & 3 deletions __test__/git-command-manager.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ describe('git-auth-helper tests', () => {
console.log(args, options.listeners.stdout)

if (args.includes('version')) {
options.listeners.stdout(Buffer.from('2.25'))
options.listeners.stdout(Buffer.from('2.28'))
return 0
}

Expand Down Expand Up @@ -57,7 +57,7 @@ describe('git-auth-helper tests', () => {
console.log(args, options.listeners.stdout)

if (args.includes('version')) {
options.listeners.stdout(Buffer.from('2.25'))
options.listeners.stdout(Buffer.from('2.28'))
return 0
}

Expand Down Expand Up @@ -97,7 +97,7 @@ describe('Test fetchDepth and fetchTags options', () => {
console.log(args, options.listeners.stdout)

if (args.includes('version')) {
options.listeners.stdout(Buffer.from('2.25'))
options.listeners.stdout(Buffer.from('2.28'))
}

return 0
Expand Down
11 changes: 2 additions & 9 deletions dist/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -480,8 +480,8 @@ const retryHelper = __importStar(__nccwpck_require__(2155));
const git_version_1 = __nccwpck_require__(3142);
// Auth header not supported before 2.9
// Wire protocol v2 not supported before 2.18
// sparse-checkout not supported before 2.25
exports.MinimumGitVersion = new git_version_1.GitVersion('2.25');
// sparse-checkout not [well-]supported before 2.28 (see https://github.com/actions/checkout/issues/1386)
exports.MinimumGitVersion = new git_version_1.GitVersion('2.28');
function createCommandManager(workingDirectory, lfs, doSparseCheckout) {
return __awaiter(this, void 0, void 0, function* () {
return yield GitCommandManager.createCommandManager(workingDirectory, lfs, doSparseCheckout);
Expand Down Expand Up @@ -937,13 +937,6 @@ class GitCommandManager {
}
}
this.doSparseCheckout = doSparseCheckout;
if (this.doSparseCheckout) {
// The `git sparse-checkout` command was introduced in Git v2.25.0
const minimumGitSparseCheckoutVersion = new git_version_1.GitVersion('2.25');
if (!gitVersion.checkMinimum(minimumGitSparseCheckoutVersion)) {
throw new Error(`Minimum Git version required for sparse checkout is ${minimumGitSparseCheckoutVersion}. Your git ('${this.gitPath}') is ${gitVersion}`);
}
}
// Set the user agent
const gitHttpUserAgent = `git/${gitVersion} (github-actions-checkout)`;
core.debug(`Set git useragent to: ${gitHttpUserAgent}`);
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "checkout",
"version": "4.1.2",
"version": "5.0.0",
"description": "checkout action",
"main": "lib/main.js",
"scripts": {
Expand Down
14 changes: 3 additions & 11 deletions src/git-command-manager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ import {GitVersion} from './git-version'

// Auth header not supported before 2.9
// Wire protocol v2 not supported before 2.18
// sparse-checkout not supported before 2.25
export const MinimumGitVersion = new GitVersion('2.25')
// sparse-checkout not [well-]supported before 2.28 (see https://github.com/actions/checkout/issues/1386)
export const MinimumGitVersion = new GitVersion('2.28')

export interface IGitCommandManager {
branchDelete(remote: boolean, branch: string): Promise<void>
Expand Down Expand Up @@ -597,15 +597,7 @@ class GitCommandManager {
}

this.doSparseCheckout = doSparseCheckout
if (this.doSparseCheckout) {
// The `git sparse-checkout` command was introduced in Git v2.25.0
const minimumGitSparseCheckoutVersion = new GitVersion('2.25')
if (!gitVersion.checkMinimum(minimumGitSparseCheckoutVersion)) {
throw new Error(
`Minimum Git version required for sparse checkout is ${minimumGitSparseCheckoutVersion}. Your git ('${this.gitPath}') is ${gitVersion}`
)
}
}

// Set the user agent
const gitHttpUserAgent = `git/${gitVersion} (github-actions-checkout)`
core.debug(`Set git useragent to: ${gitHttpUserAgent}`)
Expand Down

0 comments on commit 425626d

Please sign in to comment.