edlang/git2/struct.Commit.html

96 lines
50 KiB
HTML
Raw Normal View History

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A structure to represent a git commit"><title>Commit in git2 - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-dd39b87e5fcfba68.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="git2" data-themes="" data-resource-suffix="" data-rustdoc-version="1.80.0 (051478957 2024-07-21)" data-channel="1.80.0" data-search-js="search-d52510db62a78183.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../static.files/storage-118b08c4c78b968e.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-20a3ad099b048cf2.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-df360f571f6edeae.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../git2/index.html">git2</a><span class="version">0.18.3</span></h2></div><h2 class="location"><a href="#">Commit</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.amend">amend</a></li><li><a href="#method.as_object">as_object</a></li><li><a href="#method.author">author</a></li><li><a href="#method.author_with_mailmap">author_with_mailmap</a></li><li><a href="#method.body">body</a></li><li><a href="#method.body_bytes">body_bytes</a></li><li><a href="#method.committer">committer</a></li><li><a href="#method.committer_with_mailmap">committer_with_mailmap</a></li><li><a href="#method.header_field_bytes">header_field_bytes</a></li><li><a href="#method.id">id</a></li><li><a href="#method.into_object">into_object</a></li><li><a href="#method.message">message</a></li><li><a href="#method.message_bytes">message_bytes</a></li><li><a href="#method.message_encoding">message_encoding</a></li><li><a href="#method.message_raw">message_raw</a></li><li><a href="#method.message_raw_bytes">message_raw_bytes</a></li><li><a href="#method.parent">parent</a></li><li><a href="#method.parent_count">parent_count</a></li><li><a href="#method.parent_id">parent_id</a></li><li><a href="#method.parent_ids">parent_ids</a></li><li><a href="#method.parents">parents</a></li><li><a href="#method.raw">raw</a></li><li><a href="#method.raw_header">raw_header</a></li><li><a href="#method.raw_header_bytes">raw_header_bytes</a></li><li><a href="#method.summary">summary</a></li><li><a href="#method.summary_bytes">summary_bytes</a></li><li><a href="#method.time">time</a></li><li><a href="#method.tree">tree</a></li><li><a href="#method.tree_id">tree_id</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Clone-for-Commit%3C'repo%3E">Clone</a></li><li><a href="#impl-Debug-for-Commit%3C'repo%3E">Debug</a></li><li><a href="#impl-Drop-for-Commit%3C'repo%3E">Drop</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementati
</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Commit%3C'repo%3E" class="impl"><a class="src rightside" href="../src/git2/commit.rs.html#35-333">source</a><a href="#impl-Commit%3C'repo%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'repo&gt; <a class="struct" href="struct.Commit.html" title="struct git2::Commit">Commit</a>&lt;'repo&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.id" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#37-39">source</a><h4 class="code-header">pub fn <a href="#method.id" class="fn">id</a>(&amp;self) -&gt; <a class="struct" href="struct.Oid.html" title="struct git2::Oid">Oid</a></h4></section></summary><div class="docblock"><p>Get the id (SHA1) of a repository commit</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.tree_id" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#44-46">source</a><h4 class="code-header">pub fn <a href="#method.tree_id" class="fn">tree_id</a>(&amp;self) -&gt; <a class="struct" href="struct.Oid.html" title="struct git2::Oid">Oid</a></h4></section></summary><div class="docblock"><p>Get the id of the tree pointed to by this commit.</p>
<p>No attempts are made to fetch an object from the ODB.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.tree" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#49-55">source</a><h4 class="code-header">pub fn <a href="#method.tree" class="fn">tree</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Tree.html" title="struct git2::Tree">Tree</a>&lt;'repo&gt;, <a class="struct" href="struct.Error.html" title="struct git2::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Get the tree pointed to by a commit.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.raw" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#58-60">source</a><h4 class="code-header">pub fn <a href="#method.raw" class="fn">raw</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.pointer.html">*mut </a><a class="enum" href="../libgit2_sys/enum.git_commit.html" title="enum libgit2_sys::git_commit">git_commit</a></h4></section></summary><div class="docblock"><p>Get access to the underlying raw pointer.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.message" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#68-70">source</a><h4 class="code-header">pub fn <a href="#method.message" class="fn">message</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>&gt;</h4></section></summary><div class="docblock"><p>Get the full message of a commit.</p>
<p>The returned message will be slightly prettified by removing any
potential leading newlines.</p>
<p><code>None</code> will be returned if the message is not valid utf-8</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.message_bytes" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#76-78">source</a><h4 class="code-header">pub fn <a href="#method.message_bytes" class="fn">message_bytes</a>(&amp;self) -&gt; &amp;[<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;[u8]"></a></h4></section></summary><div class="docblock"><p>Get the full message of a commit as a byte slice.</p>
<p>The returned message will be slightly prettified by removing any
potential leading newlines.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.message_encoding" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#84-87">source</a><h4 class="code-header">pub fn <a href="#method.message_encoding" class="fn">message_encoding</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>&gt;</h4></section></summary><div class="docblock"><p>Get the encoding for the message of a commit, as a string representing a
standard encoding name.</p>
<p><code>None</code> will be returned if the encoding is not known</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.message_raw" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#92-94">source</a><h4 class="code-header">pub fn <a href="#method.message_raw" class="fn">message_raw</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>&gt;</h4></section></summary><div class="docblock"><p>Get the full raw message of a commit.</p>
<p><code>None</code> will be returned if the message is not valid utf-8</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.message_raw_bytes" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#97-99">source</a><h4 class="code-header">pub fn <a href="#method.message_raw_bytes" class="fn">message_raw_bytes</a>(&amp;self) -&gt; &amp;[<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;[u8]"></a></h4></section></summary><div class="docblock"><p>Get the full raw message of a commit.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.raw_header" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#104-106">source</a><h4 class="code-header">pub fn <a href="#method.raw_header" class="fn">raw_header</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>&gt;</h4></section></summary><div class="docblock"><p>Get the full raw text of the commit header.</p>
<p><code>None</code> will be returned if the message is not valid utf-8</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.header_field_bytes" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#109-120">source</a><h4 class="code-header">pub fn <a href="#method.header_field_bytes" class="fn">header_field_bytes</a>&lt;T: <a class="trait" href="trait.IntoCString.html" title="trait git2::IntoCString">IntoCString</a>&gt;(&amp;self, field: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Buf.html" title="struct git2::Buf">Buf</a>, <a class="struct" href="struct.Error.html" title="struct git2::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Get an arbitrary header field.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.raw_header_bytes" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#123-125">source</a><h4 class="code-header">pub fn <a href="#method.raw_header_bytes" class="fn">raw_header_bytes</a>(&amp;self) -&gt; &amp;[<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.u8.html">u8</a>] <a href="#" class="tooltip" data-notable-ty="&amp;[u8]"></a></h4></section></summary><div class="docblock"><p>Get the full raw text of the commit header.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.summary" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#134-136">source</a><h4 class="code-header">pub fn <a href="#method.summary" class="fn">summary</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>&gt;</h4></section></summary><div class="docblock"><p>Get the short “summary” of the git commit message.</p>
<p>The returned message is the summary of the commit, comprising the first
paragraph of the message with whitespace trimmed and squashed.</p>
<p><code>None</code> may be returned if an error occurs or if the summary is not valid
utf-8.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.summary_bytes" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#144-146">source</a><h4 class="code-header">pub fn <a href="#method.summary_bytes" class="fn">summary_bytes</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;[<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.u8.html">u8</a>]&gt;</h4></section></summary><div class="docblock"><p>Get the short “summary” of the git commit message.</p>
<p>The returned message is the summary of the commit, comprising the first
paragraph of the message with whitespace trimmed and squashed.</p>
<p><code>None</code> may be returned if an error occurs</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.body" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#156-158">source</a><h4 class="code-header">pub fn <a href="#method.body" class="fn">body</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>&gt;</h4></section></summary><div class="docblock"><p>Get the long “body” of the git commit message.</p>
<p>The returned message is the body of the commit, comprising everything
but the first paragraph of the message. Leading and trailing whitespaces
are trimmed.</p>
<p><code>None</code> may be returned if an error occurs or if the summary is not valid
utf-8.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.body_bytes" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#167-169">source</a><h4 class="code-header">pub fn <a href="#method.body_bytes" class="fn">body_bytes</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;[<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.u8.html">u8</a>]&gt;</h4></section></summary><div class="docblock"><p>Get the long “body” of the git commit message.</p>
<p>The returned message is the body of the commit, comprising everything
but the first paragraph of the message. Leading and trailing whitespaces
are trimmed.</p>
<p><code>None</code> may be returned if an error occurs.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.time" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#176-183">source</a><h4 class="code-header">pub fn <a href="#method.time" class="fn">time</a>(&amp;self) -&gt; <a class="struct" href="struct.Time.html" title="struct git2::Time">Time</a></h4></section></summary><div class="docblock"><p>Get the commit time (i.e. committer time) of a commit.</p>
<p>The first element of the tuple is the time, in seconds, since the epoch.
The second element is the offset, in minutes, of the time zone of the
committers preferred time zone.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.parents" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#186-191">source</a><h4 class="code-header">pub fn <a href="#method.parents" class="fn">parents</a>&lt;'a&gt;(&amp;'a self) -&gt; <a class="struct" href="struct.Parents.html" title="struct git2::Parents">Parents</a>&lt;'a, 'repo&gt; <a href="#" class="tooltip" data-notable-ty="Parents&lt;&#39;a, &#39;repo&gt;"></a></h4></section></summary><div class="docblock"><p>Creates a new iterator over the parents of this commit.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.parent_ids" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#194-199">source</a><h4 class="code-header">pub fn <a href="#method.parent_ids" class="fn">parent_ids</a>(&amp;self) -&gt; ParentIds&lt;'_&gt;</h4></section></summary><div class="docblock"><p>Creates a new iterator over the parents of this commit.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.author" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#202-207">source</a><h4 class="code-header">pub fn <a href="#method.author" class="fn">author</a>(&amp;self) -&gt; <a class="struct" href="struct.Signature.html" title="struct git2::Signature">Signature</a>&lt;'_&gt;</h4></section></summary><div class="docblock"><p>Get the author of this commit.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.author_with_mailmap" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#211-221">source</a><h4 class="code-header">pub fn <a href="#method.author_with_mailmap" class="fn">author_with_mailmap</a>(
&amp;self,
mailmap: &amp;<a class="struct" href="struct.Mailmap.html" title="struct git2::Mailmap">Mailmap</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Signature.html" title="struct git2::Signature">Signature</a>&lt;'static&gt;, <a class="struct" href="struct.Error.html" title="struct git2::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Get the author of this commit, using the mailmap to map names and email
addresses to canonical real names and email addresses.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.committer" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#224-229">source</a><h4 class="code-header">pub fn <a href="#method.committer" class="fn">committer</a>(&amp;self) -&gt; <a class="struct" href="struct.Signature.html" title="struct git2::Signature">Signature</a>&lt;'_&gt;</h4></section></summary><div class="docblock"><p>Get the committer of this commit.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.committer_with_mailmap" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#233-243">source</a><h4 class="code-header">pub fn <a href="#method.committer_with_mailmap" class="fn">committer_with_mailmap</a>(
&amp;self,
mailmap: &amp;<a class="struct" href="struct.Mailmap.html" title="struct git2::Mailmap">Mailmap</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Signature.html" title="struct git2::Signature">Signature</a>&lt;'static&gt;, <a class="struct" href="struct.Error.html" title="struct git2::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Get the committer of this commit, using the mailmap to map names and email
addresses to canonical real names and email addresses.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.amend" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#254-282">source</a><h4 class="code-header">pub fn <a href="#method.amend" class="fn">amend</a>(
&amp;self,
update_ref: <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>&gt;,
author: <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="struct.Signature.html" title="struct git2::Signature">Signature</a>&lt;'_&gt;&gt;,
committer: <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="struct.Signature.html" title="struct git2::Signature">Signature</a>&lt;'_&gt;&gt;,
message_encoding: <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>&gt;,
message: <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>&gt;,
tree: <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="struct.Tree.html" title="struct git2::Tree">Tree</a>&lt;'repo&gt;&gt;,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Oid.html" title="struct git2::Oid">Oid</a>, <a class="struct" href="struct.Error.html" title="struct git2::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Amend this existing commit with all non-<code>None</code> values</p>
<p>This creates a new commit that is exactly the same as the old commit,
except that any non-<code>None</code> values will be updated. The new commit has
the same parents as the old commit.</p>
<p>For information about <code>update_ref</code>, see <a href="struct.Repository.html#method.commit"><code>Repository::commit</code></a>.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.parent_count" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#287-289">source</a><h4 class="code-header">pub fn <a href="#method.parent_count" class="fn">parent_count</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Get the number of parents of this commit.</p>
<p>Use the <code>parents</code> iterator to return an iterator over all parents.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.parent" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#294-304">source</a><h4 class="code-header">pub fn <a href="#method.parent" class="fn">parent</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.usize.html">usize</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Commit.html" title="struct git2::Commit">Commit</a>&lt;'repo&gt;, <a class="struct" href="struct.Error.html" title="struct git2::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Get the specified parent of the commit.</p>
<p>Use the <code>parents</code> iterator to return an iterator over all parents.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.parent_id" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#312-321">source</a><h4 class="code-header">pub fn <a href="#method.parent_id" class="fn">parent_id</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.usize.html">usize</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Oid.html" title="struct git2::Oid">Oid</a>, <a class="struct" href="struct.Error.html" title="struct git2::Error">Error</a>&gt;</h4></section></summary><div class="docblock"><p>Get the specified parent id of the commit.</p>
<p>This is different from <code>parent</code>, which will attempt to load the
parent commit from the ODB.</p>
<p>Use the <code>parent_ids</code> iterator to return an iterator over all parents.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.as_object" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#324-326">source</a><h4 class="code-header">pub fn <a href="#method.as_object" class="fn">as_object</a>(&amp;self) -&gt; &amp;<a class="struct" href="struct.Object.html" title="struct git2::Object">Object</a>&lt;'repo&gt;</h4></section></summary><div class="docblock"><p>Casts this Commit to be usable as an <code>Object</code></p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.into_object" class="method"><a class="src rightside" href="../src/git2/commit.rs.html#329-332">source</a><h4 class="code-header">pub fn <a href="#method.into_object" class="fn">into_object</a>(self) -&gt; <a class="struct" href="struct.Object.html" title="struct git2::Object">Object</a>&lt;'repo&gt;</h4></section></summary><div class="docblock"><p>Consumes Commit to be returned as an <code>Object</code></p>
</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Commit%3C'repo%3E" class="impl"><a class="src rightside" href="../src/git2/commit.rs.html#409-413">source</a><a href="#impl-Clone-for-Commit%3C'repo%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'repo&gt; <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="struct.Commit.html" title="struct git2::Commit">Commit</a>&lt;'repo&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/git2/commit.rs.html#410-412">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&amp;self) -&gt; Self</h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.80.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.80.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.reference.html">&amp;Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.80.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-Commit%3C'repo%3E" class="impl"><a class="src rightside" href="../src/git2/commit.rs.html#348-357">source</a><a href="#impl-Debug-for-Commit%3C'repo%3E" class="anchor">§</a><h3 class="code-header">impl&lt;'repo&gt; <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.Commit.html" title="struct git2::Commit">Commit</a>&lt;'repo&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../src/git2/commit.rs.html#349-356">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.80.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/1.80.0/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.80.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Drop-for-Commit%3C'repo%3E" class="impl"><a class="src rightside" href="../src/git2/commit.rs.html#415-419">source</a><a
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.80.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.80.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.80.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.80.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.80.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.80.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.80.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/convert/mod.rs.html#765">source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/convert/mod.rs.html#768">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/convert/mod.rs.html#748-750">source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/convert/mod.rs.html#758">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -&gt; U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
<p>That is, this conversion is whatever the implementation of
<code><a href="https://doc.rust-lang.org/1.80.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for U</code> chooses to do.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/alloc/borrow.rs.html#83-85">source</a><a href="#impl-ToOwned-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.80.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.80.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/alloc/borrow.rs.html#88">source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&amp;self) -&gt; T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.80.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/alloc/borrow.rs.html#92">source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&amp;self, target: <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.reference.html">&amp;mut T</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.80.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/convert/mod.rs.html#805-807">source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/convert/mod.rs.html#812">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/convert/mod.rs.html#790-792">source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.80.0/src/core/convert/mod.rs.html#797">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.80.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div><script type="text/json" id="notable-traits-data">{"&[u8]":"<h3>Notable traits for <code>&amp;[<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.80.0/std/primitive.u8.html\">u8</a>]</code></h3><pre><code><div class=\"where\">impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.80.0/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a> for &amp;[<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.80.0/std/primitive.u8.html\">u8</a>]</div>","Parents<'a, 'repo>":"<h3>Notable traits for <code><a class=\"struct\" href=\"struct.Parents.html\" title=\"struct git2::Parents\">Parents</a>&lt;'commit, 'repo&gt;</code></h3><pre><code><div class=\"where\">impl&lt;'repo, 'commit&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.80.0/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"struct.Parents.html\" title=\"struct git2::Parents\">Parents</a>&lt;'commit, 'repo&gt;</div><div class=\"where\"> type <a href=\"https://doc.rust-lang.org/1.80.0/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item\" class=\"associatedtype\">Item</a> = <a class=\"struct\" href=\"struct.Commit.html\" title=\"struct git2::Commit\">Commit</a>&lt;'repo&gt;;</div>"}</script></section></div></main></body></html>