On Sat, Feb 4, 2017 at 1:25 AM, Junio C Hamano <gitster@xxxxxxxxx> wrote: > Even if you think "the right way" is to add to the iterators, I > suspect that we can still do incremental fixes? I agree with the > order of importance Michael listed in his message (i.e. the index > and the HEAD first, and then other per-worktree hierarchies at lower > priority), and I suspect you do, too. I am not sure that is what > you called "middle ground", but I think such an incremental approach > is totally fine. Yeah index should be fixed independently. Sorry that thought did not occur to me. I counted HEAD as a ref too (i.e. to be managed/iterated by refs subsystem) but I guess it's special enough to be dealt with without ref iterator. I will try to fix these two first. By middle ground, I was thinking that, now that we have ref iterator interface, we more or less know what the api should look like for a ref user like rev-list, so perhaps we could add a custom (ugly) iterator for per-worktree refs (including reflog). The ugliness is probably buried in refs/files-backend.c again until we clean it up. -- Duy