Re: [PATCH 5/7] diff_tree(): Skip skip_uninteresting() when all remaining paths interesting
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:49:23
Elijah Newren [off-list ref] writes:
... I don't think supporting this would hurt anyone, as I don't think anyone could accidentally use it at this point.
I agree 100%. There is no harm in doing what the user asks us to do, so
producing list of objects that is path limited is fine [*1*].
After all, you can feed any random set of object names to pack-objects and
use the resulting pack as a way to sneakernet just a random set of objects
without any connectivity guarantee even today.
Also, since it is unlikely anybody would accidentally use the combination,
it wouldn't make much sense to retroactively add a sanity check that
errors out either, as that needs to be lifted later when you two are done.
[Footnote]
*1* As long as it is done correctly, of course. Watch out for a case like
the same blob that is outside the pathspec (marked as "uninteresting")
appears inside (needs to be sent), i.e.
mkdir two
echo frotz >one
cp one two/three
git add one two/three
git commit -m that
git rev-list --objects two
which _should_ show the blob that records "frotz\n" because it appears at
"two/three" which is in the area, even though you happen to have the same
one at a path outside (i.e. "one").