Creating Versions

DevOur uses semantic versioning to help you track and manage different states of your project. Each version captures a snapshot of your project: settings, colors, theme, locales, products, collections and their properties, forms, pages with their sections and blocks, and navigation sections.

Prerequisites

Before creating versions, ensure you have an existing project in DevOur.

Understanding Semantic Versioning

DevOur uses Semantic Versioning format: MAJOR.MINOR.PATCH

Optional suffixes are supported: 1.0.0-alpha, 1.0.0-beta.1

Any other format is rejected with "Invalid version format. Use semantic versioning (e.g., 1.2.3 or 1.2.3-suffix)".

Your Project Page

Open your project in DevOur. Its main page holds everything related to versions:

Create a New Version

  1. Open your project in DevOur
  2. Enter a version number in the Create a new version with the current project settings field (e.g., 1.0.0)
  3. Click Create

A new version is created from the current state of your project, and it becomes the project's current version.

If the number you entered already exists, an Overwrite Version X dialog asks for confirmation. Click Overwrite to replace that version with the current state of your project, or Cancel to keep it.

From the CLI:

devour version create [projectId]
devour version create --version 2.0.0

Without --version, the CLI creates the next patch of the current version. See the CLI Reference.

Version Limits

DevOur keeps up to 5 versions per project. What happens when you create a version beyond that depends on the Auto-delete old versions toggle:

To set Auto-delete old versions from the CLI, set autoDeleteOldVersions in your configuration file and apply it with devour setup --config.

Auto-Increment Version

Enable automatic version incrementing to have DevOur create a new version every time you change your project.

Enable Auto-Increment

  1. Open your project in DevOur
  2. Toggle Auto-increment version to on

From the CLI:

devour setup --key autoIncrementVersion --value true

How Auto-Increment Works

When enabled, each successful change creates a new version by incrementing the PATCH number of the current version (e.g., 1.0.0 → 1.0.1, and 1.0.0-beta → 1.0.1). Changes that create a version:

These don't create a version:

When to Use Auto-Increment

Recommended for:

Not recommended for:

Warning: Every change creates a version, so auto-increment fills your 5 version slots quickly. Turn on Auto-delete old versions to have the oldest version removed each time.

Version History

All created versions appear in the Versions list. Each row shows:

Build a Version Bundle

A new version has no bundle yet. Click Create Bundle on its row and wait: the button shows Creating... while the bundle is built, then becomes Download.

From the CLI:

devour version bundle [projectId] --version 1.0.0

Without --version, the CLI lists the versions to pick from. devour fetch also offers to build the bundle when the version doesn't have one yet, then downloads it.

DevOur keeps the files of the two most recently built bundles of a project. When an older bundle is removed, or when a build fails, its row shows Create Bundle again.

Download a Version Bundle

  1. Locate the version in the list
  2. Click Download

From the CLI:

devour fetch [projectId] --version 1.0.0

See Downloading and Running Your Project.

Delete a Version

Click the trash icon (Delete version) next to the version. The version is deleted immediately, without a confirmation, and its bundle file is removed.

From the CLI, devour version delete [projectId] [--version <v>] always asks for confirmation.

Reset to a Previous Version

If you need to restore your project to a previous state, use the reset feature.

Perform a Reset

  1. Find the target version in the Versions list
  2. Click the reset icon (Reset to Version) next to that version
  3. Read the warning in the Reset Project to Version X dialog carefully
  4. Click Confirm to proceed

From the CLI, devour version reset [projectId] [--version <v>] always asks for confirmation.

Important Warnings

Best Practices

  1. Always create a version of your current state before resetting
  2. Use descriptive version numbers to remember what each version contains
  3. Test the restored version to ensure it meets your needs

Related Documentation