On Tue, Feb 7, 2023 at 8:17 AM Andrew Dunstan <and...@dunslane.net> wrote: > My git-fu is probably not all that it should be. I think we could possibly > get at this list of files by running > > git status --porcelain --untracked-files=no --ignored=no -- . > > And then your --dirty list would be lines beginning with ' M' while your > --cached list would be lines beginning with 'A[ M]' > > Does that seem plausible?
I don't know if that works or not, but it does seem plausible, at least. My idea would have been to use the --name-status option, which works for both git diff and git show. You just look and see which lines in the output start with M or A and then take the file names from those lines. So to indent files that are dirty, you would look at: git diff --name-status For what's cached: git diff --name-status --cached For the combination of the two: git diff --name-status HEAD For a prior commit: git show --name-status $COMMITID -- Robert Haas EDB: http://www.enterprisedb.com