On Sun, Sep 18 2022, Arthur Chan via GitGitGadget wrote: > From: Arthur Chan <arthur.chan@xxxxxxxxxxxxx> > > This patch is aimed to provide a better organisation for oss-fuzz > fuzzers, allowing more fuzzers for the git project to be added > in later development. I don't see any problem with this change per-se, but this rationale really doesn't explain anything in the end to the reader. How does just having x/y-*.c files rather than x-y-*.c allow for more fuzzers to be added? We could also add new fuzzers to the top-level now, why does this change help us to do so. I suspect the unstated reason is just "adding a lot more would make the top-level cluttered", or perhaps some design reason you hinted at in https://lore.kernel.org/git/2405897f-a774-e0d3-99bb-2185dcbb5432@xxxxxxxxxxxxx/ (but I haven't taken the time to fully understand). So, I'm fine with this v3 as-is, but also wouldn't mind a v4 with an updated commit message to address the above confusion. > --- a/.gitignore > +++ b/.gitignore > @@ -1,7 +1,7 @@ > -/fuzz-commit-graph > +/oss-fuzz/fuzz-commit-graph > /fuzz_corpora > -/fuzz-pack-headers > -/fuzz-pack-idx > +/oss-fuzz/fuzz-pack-headers > +/oss-fuzz/fuzz-pack-idx > /GIT-BUILD-OPTIONS > /GIT-CFLAGS > /GIT-LDFLAGS Speaking of clutter, a much better change here IMO would be to create a /oss-fuzz/.gitignore file, and then move these there. For prior art see: git ls-files '**/.gitignore' Even better (but I'm not sure how this is all used in the end), can we perhaps build those in a .gitignore'd oss-fuzz/.build/. But maybe not, and in any case that would be a larger change to the Makefile logic, so we can leave it for now, but I do think it makes sense to create a oss-fuzz/.gitignore in a v4.