Junio C Hamano <gitster@xxxxxxxxx> 于2021年6月8日周二 下午2:59写道: > > > > > If we actually delete "--rest", we will have no way to test %(raw:textconv) > > and %(raw:filters)... So now I think we can keep --rest (or use > > another name --path) > > and let "git for-each-ref" family reject %(rest) by default. > > I didn't read beyond the %(rest) thing, but do we even need > %(raw:textconv) to begin with? It is totally useless in the context > of for-each-ref because textconv by its nature is tied to attributes > that by definition needs a blob that is sitting at a path, but the > objects for-each-ref and friends visit are mostly commits and tags, > and even for refs that point at a blob, there isn't any "path" > information to pull attribute for. > After thinking about your words, now I think maybe we can leave %(raw:textconv) and %(raw:filter) after cat-file --batch start using ref-filter logic, so that we can provide them with suitable tests, and we don't need `--rest` anymore. > Is that what you want to add to give "cat-file --batch"? Even in > the context of "cat-file --batch", you can throw an object name for > a blob to the command, but there is no path for the blob (a blob can > appear at different places in different trees---think "rename), so I > am not sure what benefit you are trying to derive from it. > So I will remove the last two commits. > Thanks. > > Thanks. -- ZheNing Hu