Part I · Day One · Your first acquire, in detail · p. 14–15
Fetch, strip, inspect, then confer git-ness
The order is the product.
securegit acquire <url> <destination>
securegit acquire <url> .- The remote is resolved and the content is fetched as an archive, not as a live repository. No git configuration is active at any point during transfer.
- The archive is extracted to the destination.
- Hooks are stripped. Not disabled, not renamed — removed.
- The configured scanners run across the extracted tree.
- A report is written to .securegit-report.json in the destination.
- The tree is converted into a normal git repository, with history.
- A chain receipt is emitted recording the remote URL and the resolved HEAD at acquisition time. Acquisition never blocks on receipt failure.
ShippedThe receipt records what you got, from where, at what commit, at what time.
Later, if the upstream force-pushes and history changes underneath you, your receipt still says what you actually received. That is a surprisingly practical thing to have and it costs nothing at acquisition time.