Using git's diff-filter when checking for changed files allows the
actions to ignore any deleted files. Combined with explicitly passing
glob expressions for source files to git directly allows the command
to yield a list of changed files compatible with a given formatter
directly.
When the internal git reference is nonexistent, GitHub Actions seems
to convert that value into a hash made up of only zeroes. As that
hash will be commit-ish it will pass verification.
git cat-file will fail if the provided reference cannot be resolved
in the repository so should be the safer choice.