Object Versioning
With object versioning, you can keep track of changes made to your objects in the Object Storage workspace. This allows you to restore previous versions of your objects when needed.
Enabling Object Versioning
To enable object versioning, you can use the update
command with the --enable-versioning
flag. This will enable versioning for all objects in your Object Storage workspace.
app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage update --enable-versioning
Enabling versioning...
It’s also possible to enable versioning in the Control Panel. To do this, go to the Object Storage workspace you want to enable versioning for, and flip the Object Versioning toggle.
Note
Object versioning increases the storage space used by your objects. Each version of an object is stored separately, so if you have a lot of changes to your objects, you may need a bigger storage plan at some point.
Restoring object revisions
With the restore
command, you can restore an object to the state it was in at a specific point in time. You can specify the date and time of the revision you want to restore, as well as the object path.
The date and time should be in the format YYYY-MM-DD HH:MM:SS
. The object path can be the full path to the object you want to restore or a path to a directory. If you specify a directory, all objects in that directory will be restored to the specified revision.
app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage restore main "2025-04-24 06:00:00" media/catalog/product/e/x/example.jpg
By default, the restore
command will only show what it would do without actually restoring the objects. To actually restore the objects, you need to add the --apply
flag.
Note
The restore
command restores objects in place. This means that the current version of the object will be replaced with the version you are restoring. If you want to keep the current version of the object (or directory), you should make a copy of it before running the restore
command.
Interactively exploring revisions
You can also explore your objects and their revisions interactively using the explore
subcommand. This will open a terminal UI file browser where you can navigate through your objects and their versions.
app@abcdef-example-magweb-cmbl:~$ hypernode-object-storage explore
Here’s an example of how the terminal UI looks when you run the explore
command: