Not possible to exclude certain globs in rules:changes:

Proposal

Currently it seems not to be possible to use rules:changes: to trigger a job when certain globs match, ignoring other sets of globs.

Example (not real syntax):

job:
  rules:
    - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
      changes:
        - .gitlab-ci.yml
        - project-a/**/*
        - NOT **/*.md

This job should run for all MRs that have changes in project-a, but not run when the MR consists ONLY of changes to project-a/readme.md. There seems to be no way to express this with current syntax.