Re: [PATCH 0/5] Make :(attr) pathspec work with "git log"
- From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
- Date
- Nov 19, 2018, 11:42 UTC
- Message-ID
- <877eh91egn.fsf@evledraar.gmail.com>
- In-Reply-To
- <20181118164800.32759-1-pclouds@gmail.com>
On Sun, Nov 18 2018, Nguyễn Thái Ngọc Duy wrote:
Show 19 quoted lines
> When :(attr) was added, it supported one of the two main pathspec > matching functions, the one that works on a list of paths. The other > one works on a tree, tree_entry_interesting(), which gets :(attr) > support in this series. > > With this, "git grep <pattern> <tree> -- :(attr)" or "git log :(attr)" > will not abort with BUG() anymore. > > But this also reveals an interesting thing: even though we walk on a > tree, we check attributes from _worktree_ (and optionally fall back to > the index). This is how attributes are implemented since forever. I > think this is not a big deal if we communicate clearly with the user. > But otherwise, this series can be scraped, as reading attributes from > a specific tree could be a lot of work. > > The main patch is the last one. The others are just to open a path to > pass "struct index_state *" down to tree_entry_interesting(). This may > become standard procedure because we don't want to stick the_index (or > the_repository) here and there.
Another side-note (this thread is turning into my personal blog at this point...) I found an old related thread: https://public-inbox.org/git/20170509225219.GB106700@google.com/
So this series fixes 1/2 of the issues noted there, but git-ls-tree will still die with the same error.