HomeGuidesReferenceLearn
ArchiveExpo SnackDiscord and ForumsNewsletter

How to publish an update

Learn how to publish an update to a specific branch with EAS Update.


Publishing an update allows:

  • Fixing bugs and quickly updating non-native parts of a project instead of creating a new build
  • Sharing a preview version of an app using internal distribution

This guide explains the steps required to publish an update, how it works, and methods to test it.

Publish an update

To publish an update with changes from your project, you can use the eas update command, and specify a name for the branch and a message to describe the update:

Terminal
eas update --branch [branch-name] --message "[message]"

How does publishing an update work

When you publish an update with the eas update command, it generates a new update bundle and uploads it to the EAS servers. The branch name is used to identify the update and is associated with the uploaded bundle. It is similar to how Git commit works, where every commit is associated with a Git branch.

For example, you want to publish an update for the development build profile. You can use it as the branch name to associate the update with its build profile. When the app requests an update, it will download the update associated with the development branch.

For this example, the command to publish an update with the development branch and a message is:

Terminal
eas update --branch development --message "Fixes typo"

The above command runs npx expo export behind the scenes to generate a dist directory and create a local update bundle. This update bundle is uploaded to EAS servers.

In-depth guide on how EAS Update works

Dive deep and learn how EAS Update works.

Test a published update

After the update is uploaded to EAS, you can use one of the following methods to test the update:

  • Use the Extensions tab in a development build
  • Expo Orbit to install and launch the update
  • Implement a custom strategy with Updates API and app config to load updates in the app programmatically
  • Manually test the update by force closing and reopening your build up to two times to download and view the update

Updates for non-development builds (preview or production) are automatically downloaded to the device when the app starts up and makes a request for any new updates.

Troubleshooting

If your app is not updating as expected, see the following debugging guides for techniques to validate your configuration:

Debug EAS Update

Learn how to troubleshoot and debug an EAS Update.

Advanced EAS Update Debugging

Learn advanced strategies to debug an EAS Update.