I often push a work-in-progress (WIP) branch to GitLab to share with my team or as a backup. I don’t necessarily want to run the CI/CD pipeline on this branch: the tests aren’t updated and it’s not ready for a feature branch deployment. GitLab provides several ways to skip the pipeline.
Git push option Link to heading
One way to skip the pipeline is to pass the
ci.skip push option to Git:
git push -o ci.skip origin my-branch
The branch is pushed to the server, but the pipeline isn’t created.
Commit message Link to heading
Another way to skip the pipeline is to include
[ci skip] or
[skip ci] in
your commit message. Again, the branch is pushed, but the pipeline isn’t
Custom rules Link to heading
It’s also possible to run the pipeline and skip specific jobs based on the
commit message. For example, this job from the
is skipped if the commit message contains
end-to-end: script: rake test:end-to-end except: variables: - $CI_COMMIT_MESSAGE =~ /skip-end-to-end-tests/