Git push option for ci-skip

Description

Currently, GitLab supports ci-skip appearing in commit messages. If present, a pipeline is not created when that commit is the HEAD of a branch that is pushed to GitLab.

However, sometimes "I don't want CI to run" is transient, rather than persistent, data. I'd argue that that's the most common scenario. Having ci-skip appear in the commit message for all time is inappropriate in these cases.

Quite often, when pushing commits authored by someone else to GitLab, it would be inappropriate to amend the commit message to include ci-skip anyway.

Proposal

Add a new git push option that activates the existing ci-skip logic so that, e.g., this workflow:

git pull upstream master
git push origin master -o ci-skip=true

doesn't trigger a pipeline to be scheduled.

/cc @bikebilly

Links / references