<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/include/git2/commit.h, branch ethomson/index_iterator</title>
<subtitle>github.com: libgit2/libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/'/>
<entry>
<title>mailmap: Integrate mailmaps with blame and signatures</title>
<updated>2018-06-15T05:43:27+00:00</updated>
<author>
<name>Nika Layzell</name>
<email>nika@thelayzells.com</email>
</author>
<published>2018-03-17T22:15:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=e3dcaca579ba344ccdacfe4835dcc7bf52c5ba57'/>
<id>e3dcaca579ba344ccdacfe4835dcc7bf52c5ba57</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>commit: clear user-provided buffers</title>
<updated>2017-02-13T12:50:52+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2017-02-13T12:42:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=dc851d9eae21db8671118d798e55990e199af6af'/>
<id>dc851d9eae21db8671118d798e55990e199af6af</id>
<content type='text'>
The functions `git_commit_header_field` and
`git_commit_extract_signature` both receive buffers used to hand back
the results to the user. While these functions called `git_buf_sanitize`
on these buffers, this is not the right thing to do, as it will simply
initialize or zero-terminate passed buffers. As we want to overwrite
contents, we instead have to call `git_buf_clear` to completely reset
them.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The functions `git_commit_header_field` and
`git_commit_extract_signature` both receive buffers used to hand back
the results to the user. While these functions called `git_buf_sanitize`
on these buffers, this is not the right thing to do, as it will simply
initialize or zero-terminate passed buffers. As we want to overwrite
contents, we instead have to call `git_buf_clear` to completely reset
them.
</pre>
</div>
</content>
</entry>
<entry>
<title>git_object_dup: introduce typesafe versions</title>
<updated>2016-03-23T21:08:37+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@github.com</email>
</author>
<published>2016-02-17T18:04:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=f0224772ee4300d55e11ab6f84cb3dd64b35ecfd'/>
<id>f0224772ee4300d55e11ab6f84cb3dd64b35ecfd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>commit: add function to attach a signature to a commit</title>
<updated>2016-03-15T11:55:03+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2016-03-10T09:53:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=02d61a3b66a6e5f5bc0154d780daaf5f7b71ccd9'/>
<id>02d61a3b66a6e5f5bc0154d780daaf5f7b71ccd9</id>
<content type='text'>
In combination with the function which creates a commit into a buffer,
this allows us to more easily create signed commits.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In combination with the function which creates a commit into a buffer,
this allows us to more easily create signed commits.
</pre>
</div>
</content>
</entry>
<entry>
<title>commit: split creating the commit and writing it out</title>
<updated>2016-03-08T12:11:49+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2016-03-03T21:56:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=47cb42da5ad2e0af7946faf053c7ea4fd92ec6da'/>
<id>47cb42da5ad2e0af7946faf053c7ea4fd92ec6da</id>
<content type='text'>
Sometimes you want to create a commit but not write it out to the
objectdb immediately. For these cases, provide a new function to
retrieve the buffer instead of having to go through the db.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Sometimes you want to create a commit but not write it out to the
objectdb immediately. For these cases, provide a new function to
retrieve the buffer instead of having to go through the db.
</pre>
</div>
</content>
</entry>
<entry>
<title>commit: expose the different kinds of errors</title>
<updated>2016-02-16T13:06:48+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2016-02-16T13:06:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=eadd0f05f6faf14f94876839f00981da5d642667'/>
<id>eadd0f05f6faf14f94876839f00981da5d642667</id>
<content type='text'>
We should be checking whether the object we're looking up is a commit,
and we should let the caller know whether the not-found return code
comes from a bad object type or just a missing signature.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We should be checking whether the object we're looking up is a commit,
and we should let the caller know whether the not-found return code
comes from a bad object type or just a missing signature.
</pre>
</div>
</content>
</entry>
<entry>
<title>Introduce git_commit_extract_signature</title>
<updated>2016-02-09T14:58:16+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2016-02-08T17:51:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=a65afb757e2675eb8889a9ce1f8809434cdb3af7'/>
<id>a65afb757e2675eb8889a9ce1f8809434cdb3af7</id>
<content type='text'>
This returns the GPG signature for a commit and its contents without the
signature block, allowing for the verification of the commit's
signature.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This returns the GPG signature for a commit and its contents without the
signature block, allowing for the verification of the commit's
signature.
</pre>
</div>
</content>
</entry>
<entry>
<title>commit: introduce `git_commit_body`</title>
<updated>2015-12-01T09:07:00+00:00</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2015-12-01T09:03:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=7f8fe1d45e086adc9e7f3f0c33b624eeb3774033'/>
<id>7f8fe1d45e086adc9e7f3f0c33b624eeb3774033</id>
<content type='text'>
It is already possible to get a commit's summary with the
`git_commit_summary` function. It is not possible to get the
remaining part of the commit message, that is the commit
message's body.

Fix this by introducing a new function `git_commit_body`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It is already possible to get a commit's summary with the
`git_commit_summary` function. It is not possible to get the
remaining part of the commit message, that is the commit
message's body.

Fix this by introducing a new function `git_commit_body`.
</pre>
</div>
</content>
</entry>
<entry>
<title>commit: allow retrieving an arbitrary header field</title>
<updated>2015-06-22T13:56:31+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2015-06-22T13:32:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=a3f42fe8e4cdae8c85ba5d7d7b4c9fd1247d5227'/>
<id>a3f42fe8e4cdae8c85ba5d7d7b4c9fd1247d5227</id>
<content type='text'>
This allows the user to look up fields which we don't parse in libgit2,
and allows them to access gpgsig or mergetag fields if they wish to
check the signature.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows the user to look up fields which we don't parse in libgit2,
and allows them to access gpgsig or mergetag fields if they wish to
check the signature.
</pre>
</div>
</content>
</entry>
<entry>
<title>commit: safer commit creation with reference update</title>
<updated>2014-04-29T22:41:37+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-04-09T12:08:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=217c029b54e8f1574ae6bc71c4b25533ecff3b6a'/>
<id>217c029b54e8f1574ae6bc71c4b25533ecff3b6a</id>
<content type='text'>
The current version of the commit creation and amend function are unsafe
to use when passing the update_ref parameter, as they do not check that
the reference at the moment of update points to what the user expects.

Make sure that we're moving history forward when we ask the library to
update the reference for us by checking that the first parent of the new
commit is the current value of the reference. We also make sure that the
ref we're updating hasn't moved between the read and the write.

Similarly, when amending a commit, make sure that the current tip of the
branch is the commit we're amending.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The current version of the commit creation and amend function are unsafe
to use when passing the update_ref parameter, as they do not check that
the reference at the moment of update points to what the user expects.

Make sure that we're moving history forward when we ask the library to
update the reference for us by checking that the first parent of the new
commit is the current value of the reference. We also make sure that the
ref we're updating hasn't moved between the read and the write.

Similarly, when amending a commit, make sure that the current tip of the
branch is the commit we're amending.
</pre>
</div>
</content>
</entry>
</feed>
