mirror of
https://github.com/therootcompany/golib.git
synced 2026-11-04 06:55:00 +00:00
Periodically-updated shallow clone for repos used as a data source. One Fetch verb (clone-or-pull-or-skip) drives both the Fetcher interface and per-File handles. MaxAge gates on FETCH_HEAD mtime so short-lived CLI invocations don't hammer the remote across process restarts; an in-memory 1s debounce coalesces concurrent Fetches. Hardens git invocations against argument injection: validates branch/ref shape, rejects URLs starting with '-', and uses '--' separators before positional args. Userinfo in URL is redacted from error output (both args echo and git's own messages).