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 {
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() {
@ -990,7 +997,10 @@ class GitCommandManager {
if (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() {

View File

@ -228,7 +228,14 @@ class GitCommandManager {
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> {
@ -457,7 +464,10 @@ class GitCommandManager {
args.push('--recursive')
}
await this.execGit(args)
const that = this
await retryHelper.execute(async () => {
await that.execGit(args)
})
}
async submoduleStatus(): Promise<boolean> {