1
0
mirror of https://github.com/actions/checkout.git synced 2026-03-10 09:01:44 +08:00

Compare commits

...

3 Commits

Author SHA1 Message Date
Antoine Cotten
f930836948
Merge 3b88dfdbe4 into 8edcb1bdb4 2025-07-25 17:31:56 -04:00
Tingluo Huang
8edcb1bdb4
Update CODEOWNERS for actions (#2224) 2025-07-23 09:20:20 -04:00
Antoine Cotten
3b88dfdbe4
fix: sparse-checkout not disabled on subsequent checkout
If actions/checkout is invoked once with 'sparse-checkout' and cone mode
disabled, core.sparseCheckout remains enabled for all subsequent
invocations of actions/checkout.
2025-04-06 10:42:53 +02:00
3 changed files with 5 additions and 1 deletions

View File

@ -1 +1 @@
* @actions/actions-launch * @actions/actions-runtime

2
dist/index.js vendored
View File

@ -588,6 +588,8 @@ class GitCommandManager {
disableSparseCheckout() { disableSparseCheckout() {
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
yield this.execGit(['sparse-checkout', 'disable']); yield this.execGit(['sparse-checkout', 'disable']);
// Ensures that a previously enabled 'sparse-checkout' (e.g. via sparseCheckoutNonConeMode) is also disabled in the config.
yield this.execGit(['config', 'core.sparseCheckout', 'false']);
// Disabling 'sparse-checkout` leaves behind an undesirable side-effect in config (even in a pristine environment). // Disabling 'sparse-checkout` leaves behind an undesirable side-effect in config (even in a pristine environment).
yield this.tryConfigUnset('extensions.worktreeConfig', false); yield this.tryConfigUnset('extensions.worktreeConfig', false);
}); });

View File

@ -178,6 +178,8 @@ class GitCommandManager {
async disableSparseCheckout(): Promise<void> { async disableSparseCheckout(): Promise<void> {
await this.execGit(['sparse-checkout', 'disable']) await this.execGit(['sparse-checkout', 'disable'])
// Ensures that a previously enabled 'sparse-checkout' (e.g. via sparseCheckoutNonConeMode) is also disabled in the config.
yield this.execGit(['config', 'core.sparseCheckout', 'false']);
// Disabling 'sparse-checkout` leaves behind an undesirable side-effect in config (even in a pristine environment). // Disabling 'sparse-checkout` leaves behind an undesirable side-effect in config (even in a pristine environment).
await this.tryConfigUnset('extensions.worktreeConfig', false) await this.tryConfigUnset('extensions.worktreeConfig', false)
} }