git/Documentation
Taylor Blau 2f00c355cb commit-graph: drop COMMIT_GRAPH_WRITE_CHECK_OIDS flag
Since 7c5c9b9c57 (commit-graph: error out on invalid commit oids in
'write --stdin-commits', 2019-08-05), the commit-graph builtin dies on
receiving non-commit OIDs as input to '--stdin-commits'.

This behavior can be cumbersome to work around in, say, the case of
piping 'git for-each-ref' to 'git commit-graph write --stdin-commits' if
the caller does not want to cull out non-commits themselves. In this
situation, it would be ideal if 'git commit-graph write' wrote the graph
containing the inputs that did pertain to commits, and silently ignored
the remainder of the input.

Some options have been proposed to the effect of '--[no-]check-oids'
which would allow callers to have the commit-graph builtin do just that.
After some discussion, it is difficult to imagine a caller who wouldn't
want to pass '--no-check-oids', suggesting that we should get rid of the
behavior of complaining about non-commit inputs altogether.

If callers do wish to retain this behavior, they can easily work around
this change by doing the following:

     git for-each-ref --format='%(objectname) %(objecttype) %(*objecttype)' |
     awk '
       !/commit/ { print "not-a-commit:"$1 }
        /commit/ { print $1 }
     ' |
     git commit-graph write --stdin-commits

To make it so that valid OIDs that refer to non-existent objects are
indeed an error after loosening the error handling, perform an extra
lookup to make sure that object indeed exists before sending it to the
commit-graph internals.

Helped-by: Jeff King <peff@peff.net>
Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2020-05-18 12:51:11 -07:00
..
2020-04-29 16:15:27 -07:00
2020-03-09 07:57:57 -07:00
2020-05-01 13:40:00 -07:00
2019-05-09 00:37:27 +09:00
2020-05-01 13:39:56 -07:00
2018-06-25 13:22:36 -07:00
2020-04-16 15:23:42 -07:00
2020-03-22 16:38:30 -07:00
2020-04-10 09:28:02 -07:00
2020-02-14 08:58:53 -08:00
2020-04-29 16:15:27 -07:00
2019-08-11 17:40:07 -07:00
2019-04-02 13:57:00 +09:00
2019-08-11 17:40:07 -07:00
2019-01-23 11:37:29 -08:00
2019-03-18 14:45:21 +09:00
2018-12-26 14:59:37 -08:00
2019-05-07 13:04:48 +09:00
2020-03-30 10:39:48 -07:00
2019-05-07 13:04:48 +09:00
2019-05-07 13:04:48 +09:00
2019-04-02 13:57:00 +09:00
2019-10-21 12:02:39 +09:00