Jason Jean e4124c1c93
docs(core): improve affected command description to define affected projects (#31404)
<!-- Please make sure you have read the submission guidelines before
posting an PR -->
<!--
https://github.com/nrwl/nx/blob/master/CONTRIBUTING.md#-submitting-a-pr
-->

<!-- Please make sure that your commit message follows our format -->
<!-- Example: `fix(nx): must begin with lowercase` -->

<!-- If this is a particularly complex change or feature addition, you
can request a dedicated Nx release for this pull request branch. Mention
someone from the Nx team or the `@nrwl/nx-pipelines-reviewers` and they
will confirm if the PR warrants its own release for testing purposes,
and generate it for you if appropriate. -->

## Current Behavior
<!-- This is the behavior we have today -->

`nx affected` documentation was unclear and did not state what affected
projects actually meant.

## Expected Behavior
<!-- This is the behavior we should expect with the changes in this PR
-->

Adds a clear definition of "affected projects" to the CLI documentation.
Affected projects are projects that have been changed and projects that
depend on the changed projects.

## Related Issue(s)
<!-- Please link the issue being fixed so it gets closed when this is
merged. -->

Fixes #30712

---------

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
2025-05-30 21:25:57 -04:00

26 KiB

title description
affected - CLI command Run target for affected projects. Affected projects are projects that have been changed and projects that depend on the changed projects. See https://nx.dev/ci/features/affected for more details.

affected

Run target for affected projects. Affected projects are projects that have been changed and projects that depend on the changed projects. See https://nx.dev/ci/features/affected for more details.

Usage

nx affected

Install nx globally to invoke the command directly using nx, or use npx nx, yarn nx, or pnpm nx.

Examples

Run custom target for all affected projects:

 nx affected -t custom-target

Run tests in parallel:

 nx affected -t test --parallel=5

Run lint, test, and build targets for affected projects. Requires Nx v15.4+:

 nx affected -t lint test build

Run tests for all the projects affected by changing the index.ts file:

 nx affected -t test --files=libs/mylib/src/index.ts

Run tests for all the projects affected by the changes between main and HEAD (e.g., PR):

 nx affected -t test --base=main --head=HEAD

Run tests for all the projects affected by the last commit on main:

 nx affected -t test --base=main~1 --head=main

Run build for only projects with the tag dotnet:

 nx affected -t=build --exclude='*,!tag:dotnet'

Use the currently executing project name in your command:

 nx affected -t build --tag=$NX_TASK_TARGET_PROJECT:latest

Preview the task graph that Nx would run inside a webview:

 nx affected -t=build --graph

Save the task graph to a file:

 nx affected -t=build --graph=output.json

Print the task graph to the console:

 nx affected -t=build --graph=stdout

Options

Option Type Description
--all boolean Deprecated: Use nx run-many instead
--base string Base of the current branch (usually main).
--batch boolean Run task(s) in batches for executors which support batches. (Default: false)
--configuration, --c string This is the configuration to use when performing tasks on projects.
--exclude string Exclude certain projects from being processed.
--excludeTaskDependencies boolean Skips running dependent tasks first. (Default: false)
--files string Change the way Nx is calculating the affected command by providing directly changed files, list of files delimited by commas or spaces.
--graph string Show the task graph of the command. Pass a file path to save the graph data instead of viewing it in the browser. Pass "stdout" to print the results to the terminal.
--head string Latest commit of the current branch (usually HEAD).
--help boolean Show help.
--nxBail boolean Stop command execution after the first failed task. (Default: false)
--nxIgnoreCycles boolean Ignore cycles in the task graph. (Default: false)
--outputStyle dynamic-legacy, dynamic, tui, static, stream, stream-without-prefixes Defines how Nx emits outputs tasks logs. tui: enables the Nx Terminal UI, recommended for local development environments. dynamic-legacy: use dynamic-legacy output life cycle, previous content is overwritten or modified as new outputs are added, display minimal logs by default, always show errors. This output format is recommended for local development environments where tui is not supported. static: uses static output life cycle, no previous content is rewritten or modified as new outputs are added. This output format is recommened for CI environments. stream: nx by default logs output to an internal output stream, enable this option to stream logs to stdout / stderr. stream-without-prefixes: nx prefixes the project name the target is running on, use this option remove the project name prefix from output.
--parallel string Max number of parallel processes [default is 3].
--runner string This is the name of the tasks runner configured in nx.json.
--skipNxCache, --disableNxCache boolean Rerun the tasks even when the results are available in the cache. (Default: false)
--skipRemoteCache, --disableRemoteCache boolean Disables the remote cache. (Default: false)
--skipSync boolean Skips running the sync generators associated with the tasks. (Default: false)
--targets, --target, --t string Tasks to run for affected projects.
--tuiAutoExit string Whether or not to exit the TUI automatically after all tasks finish, and after how long. If set to true, the TUI will exit immediately. If set to false the TUI will not automatically exit. If set to a number, an interruptible countdown popup will be shown for that many seconds before the TUI exits.
--uncommitted boolean Uncommitted changes.
--untracked boolean Untracked changes.
--verbose boolean Prints additional information about the commands (e.g., stack traces).
--version boolean Show version number.