LfsExtraOperations
Defined in: src/core/repo.ts:2465
LFS Extra operations interface (inspired by fs-extra)
Additional LFS utilities not part of the core LFS commands. These enable advanced patterns like 2-phase commit/fetch.
Methods
preDownload()
preDownload(
opts?):Promise<LfsPreDownloadResult>
Defined in: src/core/repo.ts:2492
Pre-download LFS objects before checkout (§10.3)
Enables controlled download of large files before checkout. Useful when you need to verify available space or report progress separately.
Parameters
opts?
Returns
Promise<LfsPreDownloadResult>
preUpload()
preUpload(
opts?):Promise<LfsPreUploadResult>
Defined in: src/core/repo.ts:2484
Pre-upload LFS objects before refs push (§10.3)
Enables 2-phase commit pattern for improved reliability with large files. Objects are uploaded in batches to handle Windows command line limits.
Parameters
opts?
Returns
Promise<LfsPreUploadResult>
Example
// Phase 1: Upload LFS objects firstawait repo.lfsExtra.preUpload({ onProgress: handleProgress });
// Phase 2: Create commitawait repo.commit({ message: 'Add large files' });
// Phase 3: Push refs (LFS already uploaded, so this is fast)await repo.push();