Skip apply when plan has no changes
If you mark “Skip apply when plan has no changes” under Project Settings > Policies, the apply step is skipped when there are no pending resource changes in the Terraform plan. This is useful for automated deploys when you want continuous deployment or scheduled environments to require user approval only for plans that have actual resource changes.
Project Settings - Policies
Interaction with other approval settings
This policy also covers approvals forced from a custom flow withENV0_REQUIRES_APPROVAL=true. When the plan reports no resource changes, the deployment finishes without waiting for approval, even if a custom flow set that variable.
An approval policy that returns a pending result is the exception. It holds the deployment for approval whether or not the plan has changes.
The policy is set per project, so it governs the sub-environments of any workflow in that project as well.
Skip state refresh
Skip state refresh is a last resort for state mismatches that cause the Terraform plan to fail. It is equivalent toterraform plan -refresh=false and is available only when destroying environments.
To skip state refresh during deployment (not destroy), set the TF_CLI_ARGS_plan environment variable to -refresh=false.
While destroying an environment, check the skip state refresh checkbox. The destruction process then ignores state mismatches and removes resources that match the current state.

Common errors addressed by this policy
Skip redundant deployments
Skip redundant deployments is useful for dynamic environments with frequent changes, when you only care about the latest changes and want fast continuous deployment. When enabled under Project Settings > Policies > Skip redundant deployments: if multiple deploy executions are queued, env zero skips up to the next destroy execution. If there is no destroy execution queued, it skips to the last queued deployment. Destroy deployments and PR plans are never skipped since their sequence matters. In the example below, four queued deployments were skipped, saving about 80 minutes. Instead of waiting almost 2 hours, the latest version deployed in 20 minutes.
Skip PR plans on merge commits
This policy prevents a PR plan from running on a merge commit when the merge commit includes file changes that are not part of the PR. By default, env zero considers file changes between two commits. When you push a merge commit, this can include file changes not included in the PR. With this policy enabled, env zero considers only files included in the PR.Supported VCS: GitHub, Bitbucket, GitLab, and Bitbucket Server.

Do not report skipped status checks
When Plan on pull request is enabled, env zero reports a commit status check for every PR commit based on the associated PR plan. If a commit includes no changes relevant to the env zero environment (no matching files in the glob pattern or template directory), env zero marks the commit status as “skipped” in GitHub, or “success” in other VCS providers. Marking commits as “skipped” lets you set those status checks as required in your VCS. However, in some setups, such as monorepos with many env zero templates, you may not want those “skipped” entries to appear. The “Do not report skipped status checks” policy stops env zero from creating the status checks at all for those commits, instead of marking them as “skipped”. Configure this policy in Organization Settings > Policies.

Pull request status checks
Bypass apply mergeability check
When using Plan and apply via PR comments, env zero checks that a pull request is mergeable before running an apply. If you also set theenv0/Apply commit status as a required status check in GitHub branch protection, this creates a circular dependency: the PR is not mergeable because env0/Apply has not passed yet, but apply cannot run because the PR is not mergeable.
The Bypass apply mergeability check policy resolves this by evaluating the PR’s mergeability while excluding env zero’s own Apply status checks from the requirements.
This policy applies to GitHub and GitHub Enterprise only. Other VCS providers are not affected.
How it works
When this policy is enabled, env zero evaluates PR mergeability by querying GitHub’s branch protection rules and repository rulesets directly, rather than relying on GitHub’s merged mergeability state. During this evaluation, env zero excludes its own Apply-related status checks (such asenv0/Apply) from the required checks list.
All other branch protection requirements, such as required reviews and other CI checks, are still enforced. Only the env zero Apply checks are bypassed.
Enabling the policy
Navigate to Organization Settings > Policies, and under Plan and apply from PR comments, check Bypass PR mergeability check for env0/Apply (GitHub only).
When to use this policy
Enable this policy if you:- Use PR comment applies
- Have GitHub branch protection or repository rulesets that require the
env0/Applystatus check to pass before merging
Next steps
- Approval policies - Configure who can approve deployments and under what conditions.
- Running plan on pull requests - Set up automated plan runs on pull requests.
- Using continuous deployment - Configure automatic redeployment on every git push.
- Environment overview - Review the full environment lifecycle, including destroy and inactive states.