From 92b9ac51a1e5310f81f90796291e2a6fe6c18d61 Mon Sep 17 00:00:00 2001 From: John Wesley Walker III <81404201+jww3@users.noreply.github.com> Date: Tue, 23 Apr 2024 16:46:32 +0000 Subject: [PATCH] Implement the fix --- dist/index.js | 2 ++ src/git-command-manager.ts | 2 ++ 2 files changed, 4 insertions(+) diff --git a/dist/index.js b/dist/index.js index b210247..5ff87e4 100644 --- a/dist/index.js +++ b/dist/index.js @@ -582,6 +582,8 @@ class GitCommandManager { disableSparseCheckout() { return __awaiter(this, void 0, void 0, function* () { yield this.execGit(['sparse-checkout', 'disable']); + // Disabling 'sparse-checkout` leaves behind an undesirable side-effect in config (even in a pristine environment). + yield this.tryConfigUnset('extensions.worktreeConfig', false); }); } sparseCheckout(sparseCheckout) { diff --git a/src/git-command-manager.ts b/src/git-command-manager.ts index fa50321..8e42a38 100644 --- a/src/git-command-manager.ts +++ b/src/git-command-manager.ts @@ -178,6 +178,8 @@ class GitCommandManager { async disableSparseCheckout(): Promise { await this.execGit(['sparse-checkout', 'disable']) + // Disabling 'sparse-checkout` leaves behind an undesirable side-effect in config (even in a pristine environment). + await this.tryConfigUnset('extensions.worktreeConfig', false) } async sparseCheckout(sparseCheckout: string[]): Promise {