Read-only mirror — the public repositories of the Forgejo instance, refreshed every 10 minutes. The live instance (fg.dieschoenewolke.de) is reachable only over the VPN; clone here with https://git.dieschoenewolke.de/git/<owner>/<repo>.git.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md2
-rw-r--r--__test__/git-command-manager.test.ts6
-rw-r--r--dist/index.js11
-rw-r--r--package-lock.json4
-rw-r--r--package.json2
-rw-r--r--src/git-command-manager.ts14
6 files changed, 12 insertions, 27 deletions
diff --git a/README.md b/README.md
index 2858d46..7ec08ce 100644
--- a/README.md
+++ b/README.md
@@ -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
diff --git a/__test__/git-command-manager.test.ts b/__test__/git-command-manager.test.ts
index fcffe04..e7af4c9 100644
--- a/__test__/git-command-manager.test.ts
+++ b/__test__/git-command-manager.test.ts
@@ -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
}
@@ -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
}
@@ -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
diff --git a/dist/index.js b/dist/index.js
index 42e0297..72e40d8 100644
--- a/dist/index.js
+++ b/dist/index.js
@@ -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);
@@ -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}`);
diff --git a/package-lock.json b/package-lock.json
index 9834e50..ce0af4e 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "checkout",
- "version": "4.1.2",
+ "version": "5.0.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "checkout",
- "version": "4.1.2",
+ "version": "5.0.0",
"license": "MIT",
"dependencies": {
"@actions/core": "^1.10.0",
diff --git a/package.json b/package.json
index 651d6a0..2febd44 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "checkout",
- "version": "4.1.2",
+ "version": "5.0.0",
"description": "checkout action",
"main": "lib/main.js",
"scripts": {
diff --git a/src/git-command-manager.ts b/src/git-command-manager.ts
index 38783e9..1ce9aa3 100644
--- a/src/git-command-manager.ts
+++ b/src/git-command-manager.ts
@@ -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>
@@ -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}`)