Docs.rs
  • git-ref-0.24.1
    • git-ref 0.24.1
    • Permalink
    • Docs.rs crate page
    • MIT/Apache-2.0
    • Links
    • Repository
    • crates.io
    • Source
    • Owners
    • Byron
    • Dependencies
      • document-features ^0.2.1 normal optional
      • git-actor ^0.17.2 normal
      • git-features ^0.26.5 normal
      • git-hash ^0.10.3 normal
      • git-lock ^3.0.0 normal
      • git-object ^0.26.2 normal
      • git-path ^0.7.2 normal
      • git-tempfile ^3.0.0 normal
      • git-validate ^0.7.3 normal
      • memmap2 ^0.5.0 normal
      • nom ^7 normal
      • serde ^1.0.114 normal optional
      • thiserror ^1.0.34 normal
      • tempfile ^3.2.0 dev
    • Versions
    • 100% of the crate is documented
  • Platform
    • i686-pc-windows-msvc
    • i686-unknown-linux-gnu
    • x86_64-apple-darwin
    • x86_64-pc-windows-msvc
    • x86_64-unknown-linux-gnu
  • Feature flags
  • docs.rs
    • About docs.rs
    • Privacy policy
  • Rust
    • Rust website
    • The Book
    • Standard Library API Reference
    • Rust by Example
    • The Cargo Guide
    • Clippy Documentation

Crate git_ref

git_ref0.24.1

  • All Items

Sections

  • Feature Flags

Crate Items

  • Re-exports
  • Modules
  • Structs
  • Enums

Crates

  • git_ref

Crate git_ref

Source
Expand description

A crate for handling the references stored in various formats in a git repository.

References are also called refs which are used interchangeably.

Refs are the way to keep track of objects and come in two flavors.

  • symbolic refs are pointing to another reference
  • peeled refs point to the an object by its ObjectId

They can be identified by a relative path and stored in various flavors.

  • files
    • loose
      • one reference maps to a file on disk
    • packed
      • references are stored in a single human-readable file, along with their targets if they are symbolic.

§Feature Flags

  • serde1 — Data structures implement serde::Serialize and serde::Deserialize.

Re-exports§

pub use git_object::bstr;

Modules§

file
log
name
namespace
packed
peel
store
transaction
Transactions are the only way make changes to the ref store in order to increase the chance of consistency in a multi-threaded environment.

Structs§

FullName
Indicate that the given BString is a validate reference name or path that can be used as path on disk or written as target of a symbolic reference
FullNameRef
A validated and potentially partial reference name - it can safely be used for common operations.
Namespace
A validated prefix for references to act as a namespace.
PartialName
A validated complete and fully qualified owned reference name, safe to use for all operations.
PartialNameCow
A validated complete and fully qualified reference name, safe to use for all operations.
PartialNameRef
A validated complete and fully qualified referenced reference name, safe to use for all operations.
Reference
A fully owned backend agnostic reference

Enums§

Category
The various known categories of references.
Kind
Denotes the kind of reference.
Target
Denotes a ref target, equivalent to Kind, but with mutable data.
TargetRef
Denotes a ref target, equivalent to Kind, but with immutable data.

Results

Settings
Help
    struct field
    git_ref::Reference::name
    The path to uniquely identify this ref within its store.
    struct field
    git_ref::Category::LinkedPseudoRef::name
    The name of the worktree.
    struct field
    git_ref::Category::LinkedRef::name
    The name of the worktree.
    struct field
    git_ref::file::log::iter::Platform::name
    The full name of the reference whose reflog to retrieve.
    struct field
    git_ref::file::loose::Reference::name
    The path to uniquely identify this ref within its store.
    struct field
    git_ref::packed::Reference::name
    The validated full name of the reference.
    struct field
    git_ref::transaction::RefEdit::name
    The name of the reference to apply the change to
    module
    git_ref::name
    struct field
    git_ref::file::find::existing::Error::NotFound::name
    struct field
    git_ref::peel::to_id::Error::NotFound::name
    struct
    git_ref::Namespace
    A validated prefix for references to act as a namespace.
    struct field
    git_ref::file::Store::namespace
    The namespace to use for edits and reads
    module
    git_ref::namespace
    method
    git_ref::Reference::name_without_namespace
    Return the full validated name of the reference, with the …
    method
    git_ref::Target::try_name
    Interpret this target as name of the reference it points …
    method
    git_ref::TargetRef::try_name
    Interpret this target as name of the reference it points …
    enum variant
    git_ref::file::find::Error::RefnameValidation
    enum variant
    git_ref::file::log::Error::RefnameValidation
    enum variant
    git_ref::file::loose::reference::decode::Error::RefnameValidation
    enum variant
    git_ref::packed::find::Error::RefnameValidation
    enum variant
    git_ref::store::find::Error::RefnameValidation
    struct
    git_ref::FullName
    Indicate that the given BString is a validate reference …
    method
    git_ref::FullNameRef::file_name
    Return the file name portion of a full name, for instance …
    struct field
    git_ref::file::transaction::commit::Error::LockCommit::full_name
    struct field
    git_ref::file::transaction::commit::Error::DeleteReference::full_name
    struct field
    git_ref::file::transaction::commit::Error::DeleteReflog::full_name
    struct field
    git_ref::file::transaction::prepare::Error::LockAcquire::full_name
    struct field
    git_ref::file::transaction::prepare::Error::DeleteReferenceMustExist::full_name
    struct field
    git_ref::file::transaction::prepare::Error::MustNotExist::full_name
    struct field
    git_ref::file::transaction::prepare::Error::MustExist::full_name
    struct field
    git_ref::file::transaction::prepare::Error::ReferenceOutOfDate::full_name
    struct
    git_ref::FullNameRef
    A validated and potentially partial reference name - it …
    method
    git_ref::Namespace::into_namespaced_prefix
    Append the given prefix to this namespace so it becomes …
    method
    git_ref::Reference::strip_namespace
    Strip the given namespace from our name as well as the …
    method
    git_ref::FullName::strip_namespace
    Strip the given namespace off the beginning of this name, …
    method
    git_ref::FullName::prefix_namespace
    Modify ourself so that we use namespace as prefix, if it …
    struct
    git_ref::PartialName
    A validated complete and fully qualified owned reference …
    struct
    git_ref::PartialNameCow
    A validated complete and fully qualified reference name, …
    struct
    git_ref::PartialNameRef
    A validated complete and fully qualified referenced …
    method
    git_ref::FullNameRef::as_partial_name
    Interpret this fully qualified reference name as partial …
    trait method
    git_ref::transaction::RefEditsExt::assure_one_name_has_one_edit
    Return true if each ref name has exactly one edit across …
    method
    git_ref::FullName::category_and_short_name
    Classify this name, or return None if it’s unclassified. …
    method
    git_ref::FullNameRef::category_and_short_name
    Classify this name, or return None if it’s unclassified. …
No results :(
Try on DuckDuckGo?

Or try looking in one of these:
  • The Rust Reference for technical details about the language.
  • Rust By Example for expository code examples.
  • The Rust Book for introductions to language features and the language itself.
  • Docs.rs for documentation of crates released on crates.io.
No results :(
Try on DuckDuckGo?

Or try looking in one of these:
  • The Rust Reference for technical details about the language.
  • Rust By Example for expository code examples.
  • The Rust Book for introductions to language features and the language itself.
  • Docs.rs for documentation of crates released on crates.io.