Supported and refused
girt supports a feature only when it can reproduce Git’s format and semantics exactly. Anything outside that boundary is refused with an error that names it. A refusal tells you to use another tool for that repository. A silent approximation could write data that Git reads differently.
Outline
Section titled “Outline”- Supported: object formats, storage, reference backends, index versions, transports and platforms, each with a link to its evidence.
- Refused: unknown repository extensions, partial clone and filters, submodule recursion,
git-remote-*helpers, attributes, filters and end-of-line conversion in status and checkout, and Windows status and checkout. - Documented differences: behaviour that is compatible but not byte-identical, such as compressed object bytes and GC packing.
- How refusals surface: error types and how to detect a refusal programmatically.
- How compatibility is established: tests against the
gitexecutable, independent fixtures, and the platforms and Git versions covered in CI.