# `Minga.Git.Repo.Profile`
[🔗](https://github.com/jsmestad/minga/blob/main/lib/minga/git/repo/profile.ex#L1)

Runtime policy for repo-wide git refreshes.

The profile is deliberately cheap to build. Ambient editor features use it to avoid expensive status modes in sparse or user-overridden huge repos.

# `size_class`

```elixir
@type size_class() :: :unknown | :large | :huge
```

# `t`

```elixir
@type t() :: %Minga.Git.Repo.Profile{
  size_class: size_class(),
  sparse?: boolean(),
  timeout_ms: pos_integer(),
  untracked_mode: Minga.Git.untracked_mode()
}
```

# `detect`

```elixir
@spec detect(String.t()) :: t()
```

Builds the ambient git policy for `git_root`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
