One reference: a full raw name and its target.
Names are raw bytes (refs/heads/main, refs/tags/v1.0, …). Convenience
branch/tag selectors are expanded by Gitility before reaching any backend.
Summary
Types
@type t() :: %Gitility.Ref{name: binary(), target: Gitility.RefTarget.t()}