<div dir="ltr">Btw, the motivation for this custom command is to make it easy to apply a set of clang-tidy checks to just the files in your change set, and no others.<div><br></div><div>Obviously, checks that change symbol names wouldn't be appropriate for targeted sets like this, so I'm mainly looking to apply the current llvm* ones to start with.  And since it accepts a checks= argument and respects the .clang-tidy file, I'm hoping it will be generally useful.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 20, 2019 at 6:54 PM Don Hinton <<a href="mailto:hintonda@gmail.com">hintonda@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">I'd like to drive run-clang-tidy.py from a git custom command, e.g.:<div><br></div><div>  $ git clang-tidy <commit> [-fix-errors] [etc...]</div><div><br></div><div>And pass the all the files in the diff, with headers going in '-header-filter='.  This works great for small diffs -- I'm using `git diff -name-only` under the hood to get the list of files -- but large diffs will inevitably generate extremely long command lines.</div><div><br></div><div>Since clang-tidy can read @response-files, I figure I could just create my super long command line and pass it through, which would require a small change to run-clang-tidy.py.  run-clang-tidy.py could then create individual @respone-files for each clang-tidy instance as needed -- in case the number of headers is large.  To work, each instance would need the complete list of headers in the diff.</div><div><br></div><div>But, before I go off and start hacking it up, I just wanted to see if anyone had a better idea.  I guess I'll have the pass the file name to python as just a regular option, since the @file notation doesn't seem to be present, but I'm no python expert.</div><div><br></div><div>Btw, I have a working prototype, loosely based on git-clang-format, which can call either clang-tidy directly in a loop, or pass the entire list to run-clang-tidy.py which can do it in parallel.</div><div><br></div><div>thanks...</div><div>don</div></div>
</blockquote></div>