<main><divclass="width-limiter"><navclass="sub"><formclass="search-form"><span></span><divid="sidebar-button"tabindex="-1"><ahref="../git2/all.html"title="show sidebar"></a></div><inputclass="search-input"name="search"aria-label="Run search in the documentation"autocomplete="off"spellcheck="false"placeholder="Click or press ‘S’ to search, ‘?’ for more options…"type="search"><divid="help-button"tabindex="-1"><ahref="../help.html"title="help">?</a></div><divid="settings-menu"tabindex="-1"><ahref="../settings.html"title="settings"><imgwidth="22"height="22"alt="Change settings"src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><sectionid="main-content"class="content"><divclass="main-heading"><h1>Crate <aclass="mod"href="#">git2</a><buttonid="copy-path"title="Copy item path to clipboard"><imgsrc="../static.files/clipboard-7571035ce49a181d.svg"width="19"height="18"alt="Copy item path"></button></h1><spanclass="out-of-band"><aclass="src"href="../src/git2/lib.rs.html#1-1668">source</a> · <buttonid="toggle-all-docs"title="collapse all docs">[<span>−</span>]</button></span></div><detailsclass="toggle top-doc"open><summaryclass="hideme"><span>Expand description</span></summary><divclass="docblock"><h2id="libgit2-bindings-for-rust"><aclass="doc-anchor"href="#libgit2-bindings-for-rust">§</a>libgit2 bindings for Rust</h2>
</div></details><h2id="modules"class="section-header">Modules<ahref="#modules"class="anchor">§</a></h2><ulclass="item-table"><li><divclass="item-name"><aclass="mod"href="build/index.html"title="mod git2::build">build</a></div><divclass="desc docblock-short">Builder-pattern objects for configuration various git operations.</div></li><li><divclass="item-name"><aclass="mod"href="cert/index.html"title="mod git2::cert">cert</a></div><divclass="desc docblock-short">Certificate types which are passed to <code>CertificateCheck</code> in
<code>RemoteCallbacks</code>.</div></li><li><divclass="item-name"><aclass="mod"href="oid_array/index.html"title="mod git2::oid_array">oid_array</a></div><divclass="desc docblock-short">Bindings to libgit2’s raw <code>git_oidarray</code> type</div></li><li><divclass="item-name"><aclass="mod"href="opts/index.html"title="mod git2::opts">opts</a></div><divclass="desc docblock-short">Bindings to libgit2’s git_libgit2_opts function.</div></li><li><divclass="item-name"><aclass="mod"href="string_array/index.html"title="mod git2::string_array">string_array</a></div><divclass="desc docblock-short">Bindings to libgit2’s raw <code>git_strarray</code> type</div></li><li><divclass="item-name"><aclass="mod"href="transport/index.html"title="mod git2::transport">transport</a></div><divclass="desc docblock-short">Interfaces for adding custom transports to libgit2</div></li></ul><h2id="structs"class="section-header">Structs<ahref="#structs"class="anchor">§</a></h2><ulclass="item-table"><li><divclass="item-name"><aclass="struct"href="struct.AnnotatedCommit.html"title="struct git2::AnnotatedCommit">AnnotatedCommit</a></div><divclass="desc docblock-short">A structure to represent an annotated commit, the input to merge and rebase.</div></li><li><divclass="item-name"><aclass="struct"href="struct.ApplyOptions.html"title="struct git2::ApplyOptions">ApplyOptions</a></div><divclass="desc docblock-short">Options to specify when applying a diff</div></li><li><divclass="item-name"><aclass="struct"href="struct.AttrCheckFlags.html"title="struct git2::AttrCheckFlags">AttrCheckFlags</a></div></li><li><divclass="item-name"><aclass="struct"href="struct.Blame.html"title="struct git2::Blame">Blame</a></div><divclass="desc docblock-short">Opaque structure to hold blame results.</div></li><li><divclass="item-name"><aclass="struct"href="struct.BlameHunk.html"title="struct git2::BlameHunk">BlameHunk</a></div><divclass="desc docblock-short">Structure that represents a blame hunk.</div></li><li><divclass="item-name"><aclass="struct"href="struct.BlameIter.html"title="struct git2::BlameIter">BlameIter</a></div><divclass="desc docblock-short">An iterator over the hunks in a blame.</div></li><li><divclass="item-name"><aclass="struct"href="struct.BlameOptions.html"title="struct git2::BlameOptions">BlameOptions</a></div><divclass="desc docblock-short">Blame options</div></li><li><divclass="item-name"><aclass="struct"href="struct.Blob.html"title="struct git2::Blob">Blob</a></div><divclass="desc docblock-short">A structure to represent a git <ahref="http://git-scm.com/book/en/Git-Internals-Git-Objects">blob</a></div></li><li><divclass="item-name"><aclass="struct"href="struct.BlobWriter.html"title="struct git2::BlobWriter">BlobWriter</a></div><divclass="desc docblock-short">A structure to represent a git writestream for blobs</div></li><li><divclass="item-name"><aclass="struct"href="struct.Branch.html"title="struct git2::Branch">Branch</a></div><divclass="desc docblock-short">A structure to represent a git <ahref="http://git-scm.com/book/en/Git-Branching-What-a-Branch-Is">branch</a></div></li><li><divclass="item-name"><aclass="struct"href="struct.Branches.html"title="struct git2::Branches">Branches</a></div><divclass="desc docblock-short">An iterator over the branches inside of a repository.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Buf.html"title="struct git2::Buf">Buf</a></div><divclass="desc docblock-short">A structure to wrap an intermediate buffer used by libgit2.</div></li><li><divclass="item-name"><aclass="struct"href="struct.CheckoutNotificationType.html"title="struct git2::CheckoutNotificationType">CheckoutNotificationType</a></div><divclass="desc docblock-short">Types of notifications emitted from checkouts.</div></li><li><divclass="item-name"><aclass="struct"href="struct.CherrypickOptions.html"title="struct git2::CherrypickOptions">CherrypickOptions</a></div><divclass="desc docblock-short">Options to specify when cherry picking</div></li
<code>Repository</code>.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DescribeFormatOptions.html"title="struct git2::DescribeFormatOptions">DescribeFormatOptions</a></div><divclass="desc docblock-short">Options which can be used to customize how a description is formatted.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DescribeOptions.html"title="struct git2::DescribeOptions">DescribeOptions</a></div><divclass="desc docblock-short">Options which indicate how a <code>Describe</code> is created.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Diff.html"title="struct git2::Diff">Diff</a></div><divclass="desc docblock-short">The diff object that contains all individual file deltas.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffBinary.html"title="struct git2::DiffBinary">DiffBinary</a></div><divclass="desc docblock-short">Structure describing the binary contents of a diff.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffBinaryFile.html"title="struct git2::DiffBinaryFile">DiffBinaryFile</a></div><divclass="desc docblock-short">The contents of one of the files in a binary diff.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffDelta.html"title="struct git2::DiffDelta">DiffDelta</a></div><divclass="desc docblock-short">Description of changes to one entry.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffFile.html"title="struct git2::DiffFile">DiffFile</a></div><divclass="desc docblock-short">Description of one side of a delta.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffFindOptions.html"title="struct git2::DiffFindOptions">DiffFindOptions</a></div><divclass="desc docblock-short">Control behavior of rename and copy detection</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffFlags.html"title="struct git2::DiffFlags">DiffFlags</a></div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffHunk.html"title="struct git2::DiffHunk">DiffHunk</a></div><divclass="desc docblock-short">Structure describing a hunk of a diff.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffLine.html"title="struct git2::DiffLine">DiffLine</a></div><divclass="desc docblock-short">Structure describing a line (or data span) of a diff.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffOptions.html"title="struct git2::DiffOptions">DiffOptions</a></div><divclass="desc docblock-short">Structure describing options about how the diff should be executed.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffPatchidOptions.html"title="struct git2::DiffPatchidOptions">DiffPatchidOptions</a></div><divclass="desc docblock-short">Control behavior of formatting emails</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffStats.html"title="struct git2::DiffStats">DiffStats</a></div><divclass="desc docblock-short">Structure describing a hunk of a diff.</div></li><li><divclass="item-name"><aclass="struct"href="struct.DiffStatsFormat.html"title="struct git2::DiffStatsFormat">DiffStatsFormat</a></div><divclass="desc docblock-short">Formatting options for diff stats</div></li><li><divclass="item-name"><aclass="struct"href="struct.Email.html"title="struct git2::Email">Email</a></div><divclass="desc docblock-short">A structure to represent patch in mbox format for sending via email</div></li><li><divclass="item-name"><aclass="struct"href="struct.EmailCreateOptions.html"title="struct git2::EmailCreateOptions">EmailCreateOptions</a></div><divclass="desc docblock-short">Options for controlling the formatting of the generated e-mail.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Error.html"title="struct git2::Error">Error</a></div><divclass="desc docblock-short">A structure to represent errors coming out of libgit2.</div></li><li><divclass="item-name"><aclass="struct"href="struct.FetchOptions.html"title="structgit2::Fe
Mempack is bound to the Odb that it was created from, and cannot outlive
that Odb.</div></li><li><divclass="item-name"><aclass="struct"href="struct.MergeAnalysis.html"title="struct git2::MergeAnalysis">MergeAnalysis</a></div><divclass="desc docblock-short">The results of <code>merge_analysis</code> indicating the merge opportunities.</div></li><li><divclass="item-name"><aclass="struct"href="struct.MergeOptions.html"title="struct git2::MergeOptions">MergeOptions</a></div><divclass="desc docblock-short">Options to specify when merging.</div></li><li><divclass="item-name"><aclass="struct"href="struct.MergePreference.html"title="struct git2::MergePreference">MergePreference</a></div><divclass="desc docblock-short">The user’s stated preference for merges.</div></li><li><divclass="item-name"><aclass="struct"href="struct.MessageTrailersBytes.html"title="struct git2::MessageTrailersBytes">MessageTrailersBytes</a></div><divclass="desc docblock-short">Collection of unencoded (bytes) trailers.</div></li><li><divclass="item-name"><aclass="struct"href="struct.MessageTrailersBytesIterator.html"title="struct git2::MessageTrailersBytesIterator">MessageTrailersBytesIterator</a></div><divclass="desc docblock-short">Borrowed iterator over the raw (bytes) trailers.</div></li><li><divclass="item-name"><aclass="struct"href="struct.MessageTrailersStrs.html"title="struct git2::MessageTrailersStrs">MessageTrailersStrs</a></div><divclass="desc docblock-short">Collection of UTF-8-encoded trailers.</div></li><li><divclass="item-name"><aclass="struct"href="struct.MessageTrailersStrsIterator.html"title="struct git2::MessageTrailersStrsIterator">MessageTrailersStrsIterator</a></div><divclass="desc docblock-short">Borrowed iterator over the UTF-8-encoded trailers.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Note.html"title="struct git2::Note">Note</a></div><divclass="desc docblock-short">A structure representing a <ahref="http://alblue.bandlem.com/2011/11/git-tip-of-week-git-notes.html">note</a> in git.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Notes.html"title="struct git2::Notes">Notes</a></div><divclass="desc docblock-short">An iterator over all of the notes within a repository.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Object.html"title="struct git2::Object">Object</a></div><divclass="desc docblock-short">A structure to represent a git <ahref="http://git-scm.com/book/en/Git-Internals-Git-Objects">object</a></div></li><li><divclass="item-name"><aclass="struct"href="struct.Odb.html"title="struct git2::Odb">Odb</a></div><divclass="desc docblock-short">A structure to represent a git object database</div></li><li><divclass="item-name"><aclass="struct"href="struct.OdbLookupFlags.html"title="struct git2::OdbLookupFlags">OdbLookupFlags</a></div><divclass="desc docblock-short">Flags controlling the behavior of ODB lookup operations</div></li><li><divclass="item-name"><aclass="struct"href="struct.OdbObject.html"title="struct git2::OdbObject">OdbObject</a></div><divclass="desc docblock-short">An object from the Object Database.</div></li><li><divclass="item-name"><aclass="struct"href="struct.OdbPackwriter.html"title="struct git2::OdbPackwriter">OdbPackwriter</a></div><divclass="desc docblock-short">A stream to write a packfile to the ODB</div></li><li><divclass="item-name"><aclass="struct"href="struct.OdbReader.html"title="struct git2::OdbReader">OdbReader</a></div><divclass="desc docblock-short">A structure to represent a git ODB rstream</div></li><li><divclass="item-name"><aclass="struct"href="struct.OdbWriter.html"title="struct git2::OdbWriter">OdbWriter</a></div><divclass="desc docblock-short">A structure to represent a git ODB wstream</div></li><li><divclass="item-name"><aclass="struct"href="struct.Oid.html"title="struct git2::Oid">Oid</a></div><divclass="desc docblock-short">Unique identity of any object (commit, tree, blob, tag).</div></li><li><divclass="item-name"><aclass="struct"href="struct.PackBuilder.html"title="struct git2::PackBuilder">PackBuilder</a></div><d
structures.</div></li><li><divclass="item-name"><aclass="struct"href="struct.PathspecDiffEntries.html"title="struct git2::PathspecDiffEntries">PathspecDiffEntries</a></div><divclass="desc docblock-short">Iterator over the matching diff deltas.</div></li><li><divclass="item-name"><aclass="struct"href="struct.PathspecEntries.html"title="struct git2::PathspecEntries">PathspecEntries</a></div><divclass="desc docblock-short">Iterator over the matched paths in a pathspec.</div></li><li><divclass="item-name"><aclass="struct"href="struct.PathspecFailedEntries.html"title="struct git2::PathspecFailedEntries">PathspecFailedEntries</a></div><divclass="desc docblock-short">Iterator over the failed list of pathspec items that did not match.</div></li><li><divclass="item-name"><aclass="struct"href="struct.PathspecFlags.html"title="struct git2::PathspecFlags">PathspecFlags</a></div><divclass="desc docblock-short">…</div></li><li><divclass="item-name"><aclass="struct"href="struct.PathspecMatchList.html"title="struct git2::PathspecMatchList">PathspecMatchList</a></div><divclass="desc docblock-short">List of filenames matching a pathspec.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Progress.html"title="struct git2::Progress">Progress</a></div><divclass="desc docblock-short">Struct representing the progress by an in-flight transfer.</div></li><li><divclass="item-name"><aclass="struct"href="struct.ProxyOptions.html"title="struct git2::ProxyOptions">ProxyOptions</a></div><divclass="desc docblock-short">Options which can be specified to various fetch operations.</div></li><li><divclass="item-name"><aclass="struct"href="struct.PushOptions.html"title="struct git2::PushOptions">PushOptions</a></div><divclass="desc docblock-short">Options to control the behavior of a git push.</div></li><li><divclass="item-name"><aclass="struct"href="struct.PushUpdate.html"title="struct git2::PushUpdate">PushUpdate</a></div><divclass="desc docblock-short">Represents an update which will be performed on the remote during push.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Rebase.html"title="struct git2::Rebase">Rebase</a></div><divclass="desc docblock-short">Representation of a rebase</div></li><li><divclass="item-name"><aclass="struct"href="struct.RebaseOperation.html"title="struct git2::RebaseOperation">RebaseOperation</a></div><divclass="desc docblock-short">A rebase operation</div></li><li><divclass="item-name"><aclass="struct"href="struct.RebaseOptions.html"title="struct git2::RebaseOptions">RebaseOptions</a></div><divclass="desc docblock-short">Rebase options</div></li><li><divclass="item-name"><aclass="struct"href="struct.Reference.html"title="struct git2::Reference">Reference</a></div><divclass="desc docblock-short">A structure to represent a git <ahref="http://git-scm.com/book/en/Git-Internals-Git-References">reference</a>.</div></li><li><divclass="item-name"><aclass="struct"href="struct.ReferenceFormat.html"title="struct git2::ReferenceFormat">ReferenceFormat</a></div><divclass="desc docblock-short">Options for <ahref="struct.Reference.html#method.normalize_name"title="associated function git2::Reference::normalize_name"><code>Reference::normalize_name</code></a>.</div></li><li><divclass="item-name"><aclass="struct"href="struct.ReferenceNames.html"title="struct git2::ReferenceNames">ReferenceNames</a></div><divclass="desc docblock-short">An iterator over the names of references in a repository.</div></li><li><divclass="item-name"><aclass="struct"href="struct.References.html"title="struct git2::References">References</a></div><divclass="desc docblock-short">An iterator over the references in a repository.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Reflog.html"title="struct git2::Reflog">Reflog</a></div><divclass="desc docblock-short">A reference log of a git repository.</div></li><li><divclass="item-name"><aclass="struct"href="struct.ReflogEntry.html"title="struct git2::ReflogEntry">ReflogEntry</a></di
being updated or downloaded.</div></li><li><divclass="item-name"><aclass="struct"href="struct.RemoteConnection.html"title="struct git2::RemoteConnection">RemoteConnection</a></div><divclass="desc docblock-short">Holds callbacks for a connection to a <code>Remote</code>. Disconnects when dropped</div></li><li><divclass="item-name"><aclass="struct"href="struct.RemoteHead.html"title="struct git2::RemoteHead">RemoteHead</a></div><divclass="desc docblock-short">Description of a reference advertised by a remote server, given out on calls
to <code>list</code>.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Repository.html"title="struct git2::Repository">Repository</a></div><divclass="desc docblock-short">An owned git repository, representing all state associated with the
underlying filesystem.</div></li><li><divclass="item-name"><aclass="struct"href="struct.RepositoryInitMode.html"title="struct git2::RepositoryInitMode">RepositoryInitMode</a></div><divclass="desc docblock-short">Mode options for RepositoryInitOptions</div></li><li><divclass="item-name"><aclass="struct"href="struct.RepositoryInitOptions.html"title="struct git2::RepositoryInitOptions">RepositoryInitOptions</a></div><divclass="desc docblock-short">Options which can be used to configure how a repository is initialized</div></li><li><divclass="item-name"><aclass="struct"href="struct.RepositoryOpenFlags.html"title="struct git2::RepositoryOpenFlags">RepositoryOpenFlags</a></div><divclass="desc docblock-short">Flags for <code>Repository::open_ext</code></div></li><li><divclass="item-name"><aclass="struct"href="struct.RevertOptions.html"title="struct git2::RevertOptions">RevertOptions</a></div><divclass="desc docblock-short">Options to specify when reverting</div></li><li><divclass="item-name"><aclass="struct"href="struct.RevparseMode.html"title="struct git2::RevparseMode">RevparseMode</a></div><divclass="desc docblock-short">Flags for the return value of <code>Repository::revparse</code></div></li><li><divclass="item-name"><aclass="struct"href="struct.Revspec.html"title="struct git2::Revspec">Revspec</a></div><divclass="desc docblock-short">A revspec represents a range of revisions within a repository.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Revwalk.html"title="struct git2::Revwalk">Revwalk</a></div><divclass="desc docblock-short">A revwalk allows traversal of the commit graph defined by including one or
more leaves and excluding one or more roots.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Signature.html"title="struct git2::Signature">Signature</a></div><divclass="desc docblock-short">A Signature is used to indicate authorship of various actions throughout the
library.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Sort.html"title="struct git2::Sort">Sort</a></div><divclass="desc docblock-short">Orderings that may be specified for Revwalk iteration.</div></li><li><divclass="item-name"><aclass="struct"href="struct.StashApplyFlags.html"title="struct git2::StashApplyFlags">StashApplyFlags</a></div></li><li><divclass="item-name"><aclass="struct"href="struct.StashApplyOptions.html"title="struct git2::StashApplyOptions">StashApplyOptions</a></div><divclass="desc docblock-short">Stash application options structure</div></li><li><divclass="item-name"><aclass="struct"href="struct.StashFlags.html"title="struct git2::StashFlags">StashFlags</a></div></li><li><divclass="item-name"><aclass="struct"href="struct.StashSaveOptions.html"title="struct git2::StashSaveOptions">StashSaveOptions</a></div><divclass="desc docblock-short">Stash application options structure</div></li><li><divclass="item-name"><aclass="struct"href="struct.Status.html"title="struct git2::Status">Status</a></div><divclass="desc docblock-short">Status flags for a single file</div></li><li><divclass="item-name"><aclass="struct"href="struct.StatusEntry.html"title="struct git2::StatusEntry">StatusEntry</a></div><divclass="desc docblock-short">A structure representing an entry in the <code>Statuses</code> structure.</div></li><li><divclass="item-name"><aclass="struct"href="struct.StatusIter.html"title="struct git2::StatusIter">StatusIter</a></div><divclass="desc docblock-short">An iterator over the statuses in a <code>Statuses</code> instance.</div></li><li><divclass="item-name"><aclass="struct"href="struct.StatusOptions.html"title="struct git2::StatusOptions">StatusOptions</a></div><divclass="desc docblock-short">Options that can be provided to <code>repo.statuses()</code> to control how the status
information is gathered.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Statuses.html"title="struct git2::Statuses">Statuses</a></div><divclass="desc docblock-short">A container for a list of status information about a repository.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Submodule.html"title="struct git2::Submodule">Submodule</a></div><divclass="desc docblock-short">A structure to represent a git <ahref="http://git-scm.com/book/en/Git-Tools-Submodules">submodule</a></div></li><li><divclass="item-name"><aclass="struct"href="struct.SubmoduleStatus.html"title="struct git2::SubmoduleStatus">SubmoduleStatus</a></div><divclass="desc docblock-short">Return codes for submodule status.</div></li><li><divclass="item-name"><aclass="struct"href="struct.SubmoduleUpdateOptions.html"title="struct git2::SubmoduleUpdateOptions">SubmoduleUpdateOptions</a></div><divclass="desc docblock-short">Options to update a submodule.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Tag.html"title="struct git2::Tag">Tag</a></div><divclass="desc docblock-short">A structure to represent a git <ahref="http://git-scm.com/book/en/Git-Basics-Tagging">tag</a></div></li><li><divclass="item-name"><aclass="struct"href="struct.Time.html"title="struct git2::Time">Time</a></div><divclass="desc docblock-short">Time in a signature</div></li><li><divclass="item-name"><aclass="struct"href="struct.Transaction.html"title="struct git2::Transaction">Transaction</a></div><divclass="desc docblock-short">A structure representing a transactional update of a repository’s references.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Tree.html"title="struct git2::Tree">Tree</a></div><divclass="desc docblock-short">A structure to represent a git <ahref="http://git-scm.com/book/en/Git-Internals-Git-Objects">tree</a></div></li><li><divclass="item-name"><aclass="struct"href="struct.TreeBuilder.html"title="struct git2::TreeBuilder">TreeBuilder</a></div><divclass="desc docblock-short">Constructor for in-memory trees (low-level)</div></li><li><divclass="item-name"><aclass="struct"href="struct.TreeEntry.html"title="struct git2::TreeEntry">TreeEntry</a></div><divclass="desc docblock-short">A structure representing an entry inside of a tree. An entry is borrowed
from a tree.</div></li><li><divclass="item-name"><aclass="struct"href="struct.TreeIter.html"title="struct git2::TreeIter">TreeIter</a></div><divclass="desc docblock-short">An iterator over the entries in a tree.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Version.html"title="struct git2::Version">Version</a></div><divclass="desc docblock-short">Version information about libgit2 and the capabilities it supports.</div></li><li><divclass="item-name"><aclass="struct"href="struct.Worktree.html"title="struct git2::Worktree">Worktree</a></div><divclass="desc docblock-short">An owned git worktree</div></li><li><divclass="item-name"><aclass="struct"href="struct.WorktreeAddOptions.html"title="struct git2::WorktreeAddOptions">WorktreeAddOptions</a></div><divclass="desc docblock-short">Options which can be used to configure how a worktree is initialized</div></li><li><divclass="item-name"><aclass="struct"href="struct.WorktreePruneOptions.html"title="struct git2::WorktreePruneOptions">WorktreePruneOptions</a></div><divclass="desc docblock-short">Options to configure how worktree pruning is performed</div></li></ul><h2id="enums"class="section-header">Enums<ahref="#enums"class="anchor">§</a></h2><ulclass="item-table"><li><divclass="item-name"><aclass="enum"href="enum.ApplyLocation.html"title="enum git2::ApplyLocation">ApplyLocation</a></div><divclass="desc docblock-short">Possible application locations for git_apply
see <ahref="https://libgit2.org/libgit2/#HEAD/type/git_apply_options">https://libgit2.org/libgit2/#HEAD/type/git_apply_options</a></div></li><li><divclass="item-name"><aclass="enum"href="enum.AttrValue.html"title="enum git2::AttrValue">AttrValue</a></div><divclass="desc docblock-short">All possible states of an attribute.</div></li><li><divclass="item-name"><aclass="enum"href="enum.AutotagOption.html"title="enum git2::AutotagOption">AutotagOption</a></div><divclass="desc docblock-short">Automatic tag following options.</div></li><li><divclass="item-name"><aclass="enum"href="enum.BranchType.html"title="enum git2::BranchType">BranchType</a></div><divclass="desc docblock-short">An enumeration for the possible types of branches</div></li><li><divclass="item-name"><aclass="enum"href="enum.CertificateCheckStatus.html"title="enum git2::CertificateCheckStatus">CertificateCheckStatus</a></div><divclass="desc docblock-short">The return value for the <ahref="struct.RemoteCallbacks.html#method.certificate_check"title="method git2::RemoteCallbacks::certificate_check"><code>RemoteCallbacks::certificate_check</code></a> callback.</div></li><li><divclass="item-name"><aclass="enum"href="enum.ConfigLevel.html"title="enum git2::ConfigLevel">ConfigLevel</a></div><divclass="desc docblock-short">An enumeration of the possible priority levels of a config file.</div></li><li><divclass="item-name"><aclass="enum"href="enum.Delta.html"title="enum git2::Delta">Delta</a></div><divclass="desc docblock-short">What type of change is described by a <code>DiffDelta</code>?</div></li><li><divclass="item-name"><aclass="enum"href="enum.DiffBinaryKind.html"title="enum git2::DiffBinaryKind">DiffBinaryKind</a></div><divclass="desc docblock-short">When producing a binary diff, the binary data returned will be
either the deflated full (“literal”) contents of the file, or
the deflated binary delta between the two sides (whichever is
smaller).</div></li><li><divclass="item-name"><aclass="enum"href="enum.DiffFormat.html"title="enum git2::DiffFormat">DiffFormat</a></div><divclass="desc docblock-short">Possible output formats for diff data</div></li><li><divclass="item-name"><aclass="enum"href="enum.DiffLineType.html"title="enum git2::DiffLineType">DiffLineType</a></div><divclass="desc docblock-short">Line origin constants.</div></li><li><divclass="item-name"><aclass="enum"href="enum.Direction.html"title="enum git2::Direction">Direction</a></div><divclass="desc docblock-short">An enumeration of the possible directions for a remote.</div></li><li><divclass="item-name"><aclass="enum"href="enum.ErrorClass.html"title="enum git2::ErrorClass">ErrorClass</a></div><divclass="desc docblock-short">An enumeration of possible categories of things that can have
errors when working with a git repository.</div></li><li><divclass="item-name"><aclass="enum"href="enum.ErrorCode.html"title="enum git2::ErrorCode">ErrorCode</a></div><divclass="desc docblock-short">An enumeration of possible errors that can happen when working with a git
repository.</div></li><li><divclass="item-name"><aclass="enum"href="enum.FetchPrune.html"title="enum git2::FetchPrune">FetchPrune</a></div><divclass="desc docblock-short">Configuration for how pruning is done on a fetch</div></li><li><divclass="item-name"><aclass="enum"href="enum.FileFavor.html"title="enum git2::FileFavor">FileFavor</a></div><divclass="desc docblock-short">Merge file favor options for <code>MergeOptions</code> instruct the file-level
merging functionality how to deal with conflicting regions of the files.</div></li><li><divclass="item-name"><aclass="enum"href="enum.FileMode.html"title="enum git2::FileMode">FileMode</a></div><divclass="desc docblock-short">Valid modes for index and tree entries.</div></li><li><divclass="item-name"><aclass="enum"href="enum.ObjectType.html"title="enum git2::ObjectType">ObjectType</a></div><divclass="desc docblock-short">An enumeration all possible kinds objects may have.</div></li><li><divclass="item-name"><aclass="enum"href="enum.PackBuilderStage.html"title="enum git2::PackBuilderStage">PackBuilderStage</a></div><divclass="desc docblock-short">Stages that are reported by the <code>PackBuilder</code> progress callback.</div></li><li><divclass="item-name"><aclass="enum"href="enum.RebaseOperationType.html"title="enum git2::RebaseOperationType">RebaseOperationType</a></div><divclass="desc docblock-short">A rebase operation</div></li><li><divclass="item-name"><aclass="enum"href="enum.ReferenceType.html"title="enum git2::ReferenceType">ReferenceType</a></div><divclass="desc docblock-short">An enumeration of all possible kinds of references.</div></li><li><divclass="item-name"><aclass="enum"href="enum.RemoteRedirect.html"title="enum git2::RemoteRedirect">RemoteRedirect</a></div><divclass="desc docblock-short">Remote redirection settings; whether redirects to another host are
permitted.</div></li><li><divclass="item-name"><aclass="enum"href="enum.RepositoryState.html"title="enum git2::RepositoryState">RepositoryState</a></div><divclass="desc docblock-short">A listing of the possible states that a repository can be in.</div></li><li><divclass="item-name"><aclass="enum"href="enum.ResetType.html"title="enum git2::ResetType">ResetType</a></div><divclass="desc docblock-short">An enumeration of the operations that can be performed for the <code>reset</code>
method on a <code>Repository</code>.</div></li><li><divclass="item-name"><aclass="enum"href="enum.StashApplyProgress.html"title="enum git2::StashApplyProgress">StashApplyProgress</a></div></li><li><divclass="item-name"><aclass="enum"href="enum.StatusShow.html"title="enum git2::StatusShow">StatusShow</a></div><divclass="desc docblock-short">Enumeration of possible methods of what can be shown through a status
operation.</div></li><li><divclass="item-name"><aclass="enum"href="enum.SubmoduleIgnore.html"title="enum git2::SubmoduleIgnore">SubmoduleIgnore</a></div><divclass="desc docblock-short">Submodule ignore values</div></li><li><divclass="item-name"><aclass="enum"href="enum.SubmoduleUpdate.html"title="enum git2::SubmoduleUpdate">SubmoduleUpdate</a></div><divclass="desc docblock-short">Submodule update values</div></li><li><divclass="item-name"><aclass="enum"href="enum.TraceLevel.html"title="enum git2::TraceLevel">TraceLevel</a></div><divclass="desc docblock-short">Available tracing levels. When tracing is set to a particular level,
callers will be provided tracing at the given level and all lower levels.</div></li><li><divclass="item-name"><aclass="enum"href="enum.TreeWalkMode.html"title="enum git2::TreeWalkMode">TreeWalkMode</a></div><divclass="desc docblock-short">A binary indicator of whether a tree walk should be performed in pre-order
or post-order.</div></li><li><divclass="item-name"><aclass="enum"href="enum.TreeWalkResult.html"title="enum git2::TreeWalkResult">TreeWalkResult</a></div><divclass="desc docblock-short">Possible return codes for tree walking callback functions.</div></li><li><divclass="item-name"><aclass="enum"href="enum.WorktreeLockStatus.html"title="enum git2::WorktreeLockStatus">WorktreeLockStatus</a></div><divclass="desc docblock-short">Lock Status of a worktree</div></li></ul><h2id="constants"class="section-header">Constants<ahref="#constants"class="anchor">§</a></h2><ulclass="item-table"><li><divclass="item-name"><aclass="constant"href="constant.DEFAULT_COMMENT_CHAR.html"title="constant git2::DEFAULT_COMMENT_CHAR">DEFAULT_COMMENT_CHAR</a></div><divclass="desc docblock-short">The default comment character for <code>message_prettify</code> (‘#’)</div></li></ul><h2id="traits"class="section-header">Traits<ahref="#traits"class="anchor">§</a></h2><ulclass="item-table"><li><divclass="item-name"><aclass="trait"href="trait.IntoCString.html"title="trait git2::IntoCString">IntoCString</a></div><divclass="desc docblock-short">A class of types that can be converted to C strings.</div></li></ul><h2id="functions"class="section-header">Functions<ahref="#functions"class="anchor">§</a></h2><ulclass="item-table"><li><divclass="item-name"><aclass="fn"href="fn.message_prettify.html"title="fn git2::message_prettify">message_prettify</a></div><divclass="desc docblock-short">Clean up a message, removing extraneous whitespace, and ensure that the
lines starting with that character.</div></li><li><divclass="item-name"><aclass="fn"href="fn.message_trailers_bytes.html"title="fn git2::message_trailers_bytes">message_trailers_bytes</a></div><divclass="desc docblock-short">Get the trailers for the given message.</div></li><li><divclass="item-name"><aclass="fn"href="fn.message_trailers_strs.html"title="fn git2::message_trailers_strs">message_trailers_strs</a></div><divclass="desc docblock-short">Get the trailers for the given message.</div></li><li><divclass="item-name"><aclass="fn"href="fn.trace_set.html"title="fn git2::trace_set">trace_set</a></div></li></ul><h2id="types"class="section-header">Type Aliases<ahref="#types"class="anchor">§</a></h2><ulclass="item-table"><li><divclass="item-name"><aclass="type"href="type.Credentials.html"title="type git2::Credentials">Credentials</a></div><divclass="desc docblock-short">Callback used to acquire credentials for when a remote is fetched.</div></li><li><divclass="item-name"><aclass="type"href="type.IndexMatchedPath.html"title="type git2::IndexMatchedPath">IndexMatchedPath</a></div><divclass="desc docblock-short">A callback function to filter index matches.</div></li><li><divclass="item-name"><aclass="type"href="type.IndexerProgress.html"title="type git2::IndexerProgress">IndexerProgress</a></div><divclass="desc docblock-short">Callback to be invoked while indexing is in progress.</div></li><li><divclass="item-name"><aclass="type"href="type.StashApplyProgressCb.html"title="type git2::StashApplyProgressCb">StashApplyProgressCb</a></div><divclass="desc docblock-short">Stash application progress notification function.</div></li><li><divclass="item-name"><aclass="type"href="type.StashCb.html"title="type git2::StashCb">StashCb</a></div><divclass="desc docblock-short">This is a callback function you can provide to iterate over all the
stashed states that will be invoked per entry.</div></li><li><divclass="item-name"><aclass="type"href="type.TransportMessage.html"title="type git2::TransportMessage">TransportMessage</a></div><divclass="desc docblock-short">Callback for receiving messages delivered by the transport.</div></li><li><divclass="item-name"><aclass="type"href="type.UpdateTips.html"title="type git2::UpdateTips">UpdateTips</a></div><divclass="desc docblock-short">Callback for whenever a reference is updated locally.</div></li></ul></section></div></main></body></html>