<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/git.git/builtin, branch jk/robustify-parse-commit</title>
<subtitle>github.com: git/git.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/'/>
<entry>
<title>checkout: do not die when leaving broken detached HEAD</title>
<updated>2013-10-24T22:43:51+00:00</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-10-24T08:54:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/commit/?id=3c62183929080c17299d5b404eb092e3d53c161a'/>
<id>3c62183929080c17299d5b404eb092e3d53c161a</id>
<content type='text'>
If we move away from a detached HEAD that has broken or
corrupted commits, we might die in two places:

  1. Printing the "old HEAD was..." message.

  2. Printing the list of orphaned commits.

In both cases, we ignore the return value of parse_commit
and feed the resulting commit to the pretty-print machinery,
which will die() upon failing to read the commit object
itself.

Since both cases are ancillary to the real operation being
performed, let's be more robust and keep going. This lets
users more easily checkout away from broken history.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If we move away from a detached HEAD that has broken or
corrupted commits, we might die in two places:

  1. Printing the "old HEAD was..." message.

  2. Printing the list of orphaned commits.

In both cases, we ignore the return value of parse_commit
and feed the resulting commit to the pretty-print machinery,
which will die() upon failing to read the commit object
itself.

Since both cases are ancillary to the real operation being
performed, let's be more robust and keep going. This lets
users more easily checkout away from broken history.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>use parse_commit_or_die instead of segfaulting</title>
<updated>2013-10-24T22:43:50+00:00</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-10-24T08:53:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/commit/?id=683ff884cce955cc331929d857fac9d6bd69f46a'/>
<id>683ff884cce955cc331929d857fac9d6bd69f46a</id>
<content type='text'>
Some unchecked calls to parse_commit should obviously die on
error, because their next step is to start looking at the
parsed fields, which will cause a segfault. These are
obvious candidates for parse_commit_or_die, which will be a
strict improvement in behavior.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some unchecked calls to parse_commit should obviously die on
error, because their next step is to start looking at the
parsed fields, which will cause a segfault. These are
obvious candidates for parse_commit_or_die, which will be a
strict improvement in behavior.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>assume parse_commit checks for NULL commit</title>
<updated>2013-10-24T22:43:50+00:00</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-10-24T08:53:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/commit/?id=5e7d4d3e932432131d0f8f4195e0061ecf644865'/>
<id>5e7d4d3e932432131d0f8f4195e0061ecf644865</id>
<content type='text'>
The parse_commit function will check whether it was passed a
NULL commit pointer, and if so, return an error. There is no
need for callers to check this separately.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The parse_commit function will check whether it was passed a
NULL commit pointer, and if so, return an error. There is no
need for callers to check this separately.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>assume parse_commit checks commit-&gt;object.parsed</title>
<updated>2013-10-24T22:43:50+00:00</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-10-24T08:53:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/commit/?id=0064053bd76ba385e1b5d51b6175bc17bc507804'/>
<id>0064053bd76ba385e1b5d51b6175bc17bc507804</id>
<content type='text'>
The parse_commit function will check the "parsed" flag of
the object and do nothing if it is set. There is no need
for callers to check the flag themselves, and doing so only
clutters the code.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The parse_commit function will check the "parsed" flag of
the object and do nothing if it is set. There is no need
for callers to check the flag themselves, and doing so only
clutters the code.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'jk/cat-file-batch-optim'</title>
<updated>2013-08-02T16:32:48+00:00</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-08-02T16:32:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/commit/?id=c7eb614c5cc4b265a53421354020634f92fc2d59'/>
<id>c7eb614c5cc4b265a53421354020634f92fc2d59</id>
<content type='text'>
* jk/cat-file-batch-optim:
  Revert "cat-file: split --batch input lines on whitespace"
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* jk/cat-file-batch-optim:
  Revert "cat-file: split --batch input lines on whitespace"
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "cat-file: split --batch input lines on whitespace"</title>
<updated>2013-08-02T16:29:30+00:00</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-08-02T16:29:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/commit/?id=062aeee8aa426468817c5bea96d781289b272ced'/>
<id>062aeee8aa426468817c5bea96d781289b272ced</id>
<content type='text'>
This reverts commit c334b87b30c1464a1ab563fe1fb8de5eaf0e5bac; the
update assumed that people only used the command to read from
"rev-list --objects" output, whose lines begin with a 40-hex object
name followed by a whitespace, but it turns out that scripts feed
random extended SHA-1 expressions (e.g. "HEAD:$pathname") in which
a whitespace has to be kept.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit c334b87b30c1464a1ab563fe1fb8de5eaf0e5bac; the
update assumed that people only used the command to read from
"rev-list --objects" output, whose lines begin with a 40-hex object
name followed by a whitespace, but it turns out that scripts feed
random extended SHA-1 expressions (e.g. "HEAD:$pathname") in which
a whitespace has to be kept.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'ob/typofixes'</title>
<updated>2013-08-01T19:01:01+00:00</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-08-01T18:58:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/commit/?id=d50cb7569cfb6e04ba48900821618d28012f334e'/>
<id>d50cb7569cfb6e04ba48900821618d28012f334e</id>
<content type='text'>
* ob/typofixes:
  many small typofixes
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* ob/typofixes:
  many small typofixes
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'jc/rm-submodule-error-message'</title>
<updated>2013-08-01T18:57:25+00:00</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-08-01T18:57:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/commit/?id=baa2e936990a9bce84fdb8bcffbd940f05800241'/>
<id>baa2e936990a9bce84fdb8bcffbd940f05800241</id>
<content type='text'>
Consolidate two messages phrased subtly differently without a good
reason.

* jc/rm-submodule-error-message:
  builtin/rm.c: consolidate error reporting for removing submodules
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Consolidate two messages phrased subtly differently without a good
reason.

* jc/rm-submodule-error-message:
  builtin/rm.c: consolidate error reporting for removing submodules
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'jx/clean-interactive'</title>
<updated>2013-08-01T18:52:37+00:00</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-08-01T18:52:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/commit/?id=c2980866b75229c1361b1f7a2f04c9ed197588e5'/>
<id>c2980866b75229c1361b1f7a2f04c9ed197588e5</id>
<content type='text'>
* jx/clean-interactive:
  git-clean: implement partial matching for selection
  Documentation/git-clean: fix description for range
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* jx/clean-interactive:
  git-clean: implement partial matching for selection
  Documentation/git-clean: fix description for range
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'jk/commit-how-to-abort-cherry-pick'</title>
<updated>2013-07-31T19:38:23+00:00</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-07-31T19:38:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/git.git/commit/?id=af77c0b1cf3f8c8ba5ae30cec208227800447f99'/>
<id>af77c0b1cf3f8c8ba5ae30cec208227800447f99</id>
<content type='text'>
* jk/commit-how-to-abort-cherry-pick:
  commit: tweak empty cherry pick advice for sequencer
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* jk/commit-how-to-abort-cherry-pick:
  commit: tweak empty cherry pick advice for sequencer
</pre>
</div>
</content>
</entry>
</feed>
