Johannes Schindelin [off-list ref] writes:
On Thu, 24 Jul 2008, Brandon Casey wrote:
quoted
Since 5723fe7e, temporary objects are now created in their final destination
directories, rather than in .git/objects/. Teach fsck to recognize and
ignore the temporary objects it encounters,
It somehow feels wrong for fsck to ignore anything that could be used.
Back when we created temporaries in .git/objects/, these tmp_obj files
were not even checked nor looked at, because fsck_object_dir() checked
only those 256 fan-out directories, so this is nothing new.
And these tmp_obj files are something we _expect_ to be in the object
directory. The user can ^C out object creation codepath anytime, and we
do not reference the final destination objects from refs nor the index to
preserve the integrity of the repository when that happens. In other
words, they are crufts, but they are not something unusual nor get alarmed
about.
And it also is the right thing to do to remove them in prune.