Re: [PATCH 0/2] Support `git reset --stdin`
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Oct 11, 2016, 21:36 UTC
- Message-ID
- <xmqqoa2q7elc.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <20161011212644.zzqidtcgatu3qsei@sigill.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 13 quoted lines
>> If read-tree had pathspec support (i.e. "read these and only these >> paths given from the command line into the index from a given >> tree-ish"), that would have been the most natural place to extend >> with "oh, by the way, instead of the command line, you can feed the >> paths on the standard input". >> >> But it doesn't have one. > > True. I'd have done something more like: > > git ls-tree -r $paths | git update-index --index-info > > but there are some corner cases around deleting paths from the index.
Ah, I would think read-tree has the exact same issue, even if we added pathspec support, around removal.
So it is more like
( printf "0 0000000000000000000000000000000000000000\t%s\n" $paths git --literal-pathspecs ls-tree -r --ignore-missing $paths ) | git update-index --index-info
which does not look too bad, even though this
printf "%s\n" $paths | git reset --stdin
does look shorter.