Expand description
The auto-push’s bounded git push, preceded by the upload, its pre-check and its explanation.
What:
Run one bounded git push of the auto-push, preceded by the Git LFS upload when the repository has one.
Why:
The auto-push and its reconcile pushes publish refs, so they upload the LFS objects the pushed commits point to
exactly as a typed git push does. The wrapper is the parent of both children and captures their output, so it
owns the explanation: a missing git-lfs is refused before anything starts, a failed upload ends the attempt with
the full explanation after the program’s own output, and the push is not started. The push carries no hook, and no
process other than Git and git-lfs is started for this, none of them the wrapper.
In TS you’d write (pseudocode):
const failed = plan && await uploadBounded(plan); if (failed) return failed; return await runBoundedPush(pushCommand(git, args));Functions§
- run_
push - What:
Run
git <arguments>(apush) as a bounded child, after the upload when the repository has LFS keys. Why:arguments[0]ispush; what follows is its option region, which the pre-check and the plan read.