CLI reference
Every overpush command. Run overpush help <command> for the full list of flags on your installed version.
Global flags
-v, --verbose | Print every step and the commands the CLI runs. |
--version | Print the CLI version. |
Account
overpush login
Sign in through your browser. Needed once per computer.
overpush logout
Sign out and remove this computer's credentials.
overpush whoami
Show the account you're signed in as.
overpush token
Print the token and server address CI needs. See CI.
Project
overpush init
Connect the current Flutter project to an app from the dashboard. Writes overpush.yaml.
--app-id | The app id from the dashboard. Asked for if not given. |
--force | Reconnect a project that already has overpush.yaml. |
--no-fix | Only report a missing INTERNET permission instead of adding it. |
Releases
overpush release android
Build a release that can be patched.
--artifact | aab (default, for the Play Store) or apk. |
-y, --yes | Don't ask for confirmation. |
A release records what was built and keeps the files later patches need, on this computer and on the OverPush server, so another computer or CI can patch it too. Upload the .aab it prints in Play Console; see Shipping the release.
overpush preview android
Install a release on a phone connected over USB and open it, the way the Play Store does.
--release-version | Another release, by its id. |
--device | Which phone, when more than one is connected. |
overpush release ios
Build a release that can be patched.
--artifact | ipa (default, for App Store Connect) or app (for your own iPhone). |
--export-method | app-store, ad-hoc, development, enterprise. |
--export-options-plist | Path to an ExportOptions.plist. |
--[no-]codesign | Sign the build. Use --no-codesign in CI. |
-y, --yes | Don't ask for confirmation. |
A release records what was built and keeps the files later patches need, on this computer and on the OverPush server, so another computer or CI can patch it too.
overpush preview ios
Install a release on a connected iPhone and open it. Needs a release built with --artifact app; --bundle-id if the app's id can't be read.
More release commands
overpush releases list | List the iOS releases on this computer. |
overpush releases info [<release-id>|latest] | Everything about one release, and whether it can still be patched. |
overpush releases archive [<version>] | Save a release to your account again, then open its build in Xcode's Organizer to upload it (iOS; --no-distribute skips Xcode). Releases are saved automatically; this is for one where that failed, or built before it did. |
overpush releases restore [<version>|latest] | Download a release's files onto this computer. overpush patch does this by itself when they're missing. |
overpush releases mark-uploaded [<version>|latest] | Record that a release went to App Store Connect, when you uploaded it some other way. |
overpush upload ios | Upload the built IPA to App Store Connect / TestFlight. Takes --api-key and --api-issuer, or --apple-id and --password (an app-specific password). |
overpush distribute ios | Open the build in Xcode's Organizer to distribute it from there. |
overpush verify ios | Install the built app on a connected iPhone and report whether it's ready for patches. --installed checks the app already on the phone (TestFlight, App Store) instead, and shows the patch it's running. |
Patches
overpush patch android
overpush patch ios
Build and publish a patch.
--release-version | Release to patch: an id, a version such as 1.4.0+31, or latest. Defaults to the newest on disk. |
--rollout-percent | 0–100. Default 100. |
--notes | Notes for your own log. |
--patch-number | Override the patch number. |
-n, --dry-run | Build and check, don't publish. |
--allow-native-diffs | Publish even if native code changed. |
--allow-asset-diffs | Publish even if assets changed. |
-y, --yes | Don't ask for confirmation. |
overpush patches rollout <patch-number> --percent <0-100>
Change how many devices a published patch is offered to.
--platform | ios or android. Only needed when the project has releases of both. |
--release-version | Release the patch belongs to. Defaults to the newest. |
overpush patches revoke <patch-number>
Stop a patch on every device; they go back to the release's own code on their next start. Takes --platform and --release-version like rollout, and --reason, shown in the console.
overpush patches list
List the patches built on this computer. --release-version filters to one release.
Going back to earlier code
Revoke the bad patch, so phones run the release's own code, or publish the earlier code again as a new patch.
More patch commands
overpush patches rollback [--to <n>] | Serve an earlier patch's code again, as a new patch number. |
overpush patches info | Everything about one patch. --release-version, --patch-number. |
The console shows every patch of every release, for both platforms, with its installs and failures.