> For the complete documentation index, see [llms.txt](https://docs.flxbl.io/flxbl/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.flxbl.io/flxbl/sfp/cli-reference-v51-release-v3/advanced/sync.md).

# Sync

Commands to help sync your orgs

* [`sfp sync org`](#sfp-sync-org)

## `sfp sync org`

Syncs changed packages to a target org using branch comparison or org-installed artifacts as baseline

```
USAGE
  $ sfp sync org -o <value> [--json] [--repository <value>] [-e <value>] [-t <value>] [--sfp-server-url
    <value>] [-b <value>] [--basebranch <value> | --from-org] [--dryrun] [--include-not-installed] [-v <value>] [-p
    <value>...] [--releaseconfig <value>...] [--diff-deploy] [--sourcepackageoverride] [--waittime <value>]
    [--reset-tracking] [-g <value>...] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

FLAGS
  -b, --branch=<value>              [default: HEAD] Target branch to sync (defaults to HEAD for org-based mode)
  -e, --email=<value>               Email address for authenticated user. Ignored if --application-token is provided.
                                    Can be set via SFP_SERVER_USER env var.
  -g, --logsgroupsymbol=<value>...  Symbol used by CICD platform to group/collapse logs in the console. Provide an
                                    opening group, and an optional closing group symbol.
  -o, --targetorg=<value>           (required) Username or alias of the target org.
  -p, --packages=<value>...         Comma-separated list of package names to sync
  -t, --application-token=<value>   Application token for CI/CD authentication. Can be set via SFP_SERVER_TOKEN env var
                                    (CLI flags take precedence over env vars).
  -v, --devhubalias=<value>         Username or alias of the Dev Hub org.
      --basebranch=<value>          Base branch to compare against for detecting changes (branch-based mode)
      --diff-deploy                 Deploy only the changed files directly to the org, skipping the full build pipeline.
                                    Uses RunRelevantTests. Untracked - no artifact records are created.
      --dryrun                      Preview changes without building or deploying (org-based mode only)
      --from-org                    Use org-installed artifacts as baseline instead of git branch comparison (org-based
                                    mode)
      --include-not-installed       Include packages not installed in org (org-based mode only, default: true)
      --loglevel=<option>           [default: info] logging level for this command invocation
                                    <options: trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL>
      --releaseconfig=<value>...    Path to release config file to filter packages by domain
      --repository=<value>          The repository identifier. E.g `owner/repo` for GitHub/GitLab or `org/project/repo`
                                    for Azure DevOps
      --reset-tracking              Reset source tracking after successful sync. Use this when syncing to
                                    source-tracking enabled orgs (scratch orgs, sandboxes) so that project status
                                    reflects the synced state.
      --sfp-server-url=<value>      URL of the SFP server. Can be set via SFP_SERVER_URL env var or config: sfp
                                    config:set server-url
      --sourcepackageoverride       Override unlocked packages to source packages during build
      --waittime=<value>            [default: 120] Wait time for deployment to finish in minutes

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Syncs changed packages to a target org using branch comparison or org-installed artifacts as baseline

EXAMPLES
  # Branch-based sync (compare two git branches)

  $ sfp sync -o <username> --branch feature/test --basebranch main

  $ sfp sync -o <username> --basebranch main --branch feature/test --devhubalias mydevhub



  # Org-based sync (use installed artifacts as baseline)

  $ sfp sync -o <username> --from-org --dry-run

  $ sfp sync -o <username> --from-org --branch feature/test

  $ sfp sync -o <username> --from-org --include-not-installed=false
```

*See code:* [*src/commands/sync/org.ts*](https://source.flxbl.io/flxbl/sfp-pro)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.flxbl.io/flxbl/sfp/cli-reference-v51-release-v3/advanced/sync.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
