Denton Liu [off-list ref] writes:
If a git command in a nested command substitution fails, it will be
silently ignored since only the return code of the outer command
substitutions is reported. Factor out nested command substitutions so
that the error codes of those commands are reported.
Locally this makes sense. We may want to clean it up further by
using existing blob objects, instead of using hash-objects, but that
is for some other day.