Structs
GitCheckout is a local checkout of a particular revision. Calling
clone_into with a reference will resolve the reference into a revision,
and return an anyhow::Error if no revision for that reference was found.
GitDatabase is a local clone of a remote repository’s database. Multiple
GitCheckouts can be cloned from this GitDatabase.
GitRemote represents a remote repository. It gets cloned into a local
GitDatabase.