mirror of
https://code.forgejo.org/actions/checkout.git
synced 2025-01-09 23:29:33 +01:00
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.
This commit is contained in:
parent
cbb722410c
commit
a0847da780
2 changed files with 4 additions and 0 deletions
2
dist/index.js
vendored
2
dist/index.js
vendored
|
@ -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);
|
||||||
});
|
});
|
||||||
|
|
|
@ -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)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue