GitLab has a few push options for which I'd like to create switches in magit-push's transient.
-n to add
-oci.skip is simple enough:
(transient-append-suffix 'magit-push "-n" '("-s" "skip CI" "-oci.skip"))
I would also like that
-m adds three different options (
-omerge_request.remove_source_branch). The following code fails to achieve that goal:
(transient-append-suffix 'magit-push "-n" '("-m" "auto-merge on success" "-omerge_request.create -omerge_request.merge_when_pipeline_succeeds -omerge_request.remove_source_branch"))
The above causes the string containing the three options to be passed as a single argument to
git push. I.e., the spaces are not argument separators, but belong to the argument.
git wants to receive these as three arguments. I could make three different switches in magit-pull, but that would be cumbersome to use. I'd prefer to have a single switch that activates these three arguments. How can I do that?