diff --git a/src/content/docs/commands/copy.mdx b/src/content/docs/commands/copy.mdx index d21e022330..e8fcfe3d50 100644 --- a/src/content/docs/commands/copy.mdx +++ b/src/content/docs/commands/copy.mdx @@ -51,6 +51,19 @@ The `copy` command is especially handy for: - ``: The destination branch within the same repository. +## Requirements + +Whatever your configuration says, Mergify adds one requirement before it copies: +the pull request has to be free of conflict with its base branch. It does not +have to be merged, so `copy` runs on an open pull request as well as a merged +one. The same requirement applies to [the `copy` +action](/workflow/actions/copy). + +When the pull request is in conflict, the command answers that there is nothing +to do and stops there. Unlike [`backport`](/commands/backport), which waits for +the pull request to be merged, `copy` does not wait for the requirement to be +met, so resolve the conflict and run it again. + ## Example diff --git a/src/content/docs/commands/rebase.mdx b/src/content/docs/commands/rebase.mdx index 116a08e106..5123ecd1ba 100644 --- a/src/content/docs/commands/rebase.mdx +++ b/src/content/docs/commands/rebase.mdx @@ -35,6 +35,19 @@ request: Posting '@mergifyio rebase' in GitHub interface +## Requirements + +Whatever your configuration says, Mergify adds its own requirements before it +rebases: the pull request has to be open, free of conflict with its base branch, +not in a merge queue, and either behind its base branch or without a linear +history. The same requirements apply to [the `rebase` +action](/workflow/actions/rebase). + +When one of them does not hold, the command answers that there is nothing to do +and stops there. Unlike [`queue`](/commands/queue) and +[`backport`](/commands/backport), it does not wait for the requirements to be +met, so run it again once the pull request has something to rebase. + ## Impersonation Mergify pushes the rebased branch as a GitHub user, not as itself. Unless a diff --git a/src/content/docs/commands/update.mdx b/src/content/docs/commands/update.mdx index 3f4c586d7c..b0daa1f5ae 100644 --- a/src/content/docs/commands/update.mdx +++ b/src/content/docs/commands/update.mdx @@ -16,6 +16,19 @@ take care of it. @Mergifyio update ``` +## Requirements + +Whatever your configuration says, Mergify adds its own requirements before it +updates: the pull request has to be open, free of conflict with its base branch, +not in a merge queue, and behind its base branch. The same requirements apply to +[the `update` action](/workflow/actions/update). + +When one of them does not hold, most often because the pull request is already +up to date, the command answers that there is nothing to do and stops there. +Unlike [`queue`](/commands/queue) and [`backport`](/commands/backport), it does +not wait for the requirements to be met, so run it again once the pull request +has something to update. + ## Fork Pull Requests `update` merges the base branch into the pull request rather than rewriting its