This commit is contained in:
Jason Barnett 2026-03-20 10:55:03 -06:00 committed by GitHub
commit 5e64c6349c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 24 additions and 4 deletions

14
dist/index.js vendored
View File

@ -789,7 +789,14 @@ class GitCommandManager {
else { else {
args.push(ref); args.push(ref);
} }
yield this.execGit(args); // Retry checkout because it can trigger network I/O when using partial
// clones (filter=blob:none). In that mode git lazily fetches missing
// blobs from the promisor remote during checkout, so a transient network
// failure would otherwise surface as a hard error here.
const that = this;
yield retryHelper.execute(() => __awaiter(this, void 0, void 0, function* () {
yield that.execGit(args);
}));
}); });
} }
checkoutDetach() { checkoutDetach() {
@ -990,7 +997,10 @@ class GitCommandManager {
if (recursive) { if (recursive) {
args.push('--recursive'); args.push('--recursive');
} }
yield this.execGit(args); const that = this;
yield retryHelper.execute(() => __awaiter(this, void 0, void 0, function* () {
yield that.execGit(args);
}));
}); });
} }
submoduleStatus() { submoduleStatus() {

View File

@ -228,7 +228,14 @@ class GitCommandManager {
args.push(ref) args.push(ref)
} }
await this.execGit(args) // Retry checkout because it can trigger network I/O when using partial
// clones (filter=blob:none). In that mode git lazily fetches missing
// blobs from the promisor remote during checkout, so a transient network
// failure would otherwise surface as a hard error here.
const that = this
await retryHelper.execute(async () => {
await that.execGit(args)
})
} }
async checkoutDetach(): Promise<void> { async checkoutDetach(): Promise<void> {
@ -457,7 +464,10 @@ class GitCommandManager {
args.push('--recursive') args.push('--recursive')
} }
await this.execGit(args) const that = this
await retryHelper.execute(async () => {
await that.execGit(args)
})
} }
async submoduleStatus(): Promise<boolean> { async submoduleStatus(): Promise<boolean> {