Help Center > Object Storage Service > FAQ > Versioning > What Is Versioning Used for?

What Is Versioning Used for?

After versioning is enabled:

  • When an object is uploaded, OBS automatically assigns a unique version ID to the object. Objects with the same name are stored on OBS with different version IDs.
  • Objects can be downloaded by version ID. By default, the latest object is downloaded if the version ID is not specified.
  • Objects can be permanently deleted by specifying version IDs after Show is enabled for Versions. They cannot be restored after being deleted. If an object is deleted after Hide is enabled for Versions, the object will have a deletion mark with the unique version ID but will not be actually deleted. If an access request is sent to the object, a message is returned indicating that the object does not exist. If you delete this deletion mark, you will cancel the deletion of the object.
  • The latest objects in a bucket are returned by default after a GET Object request. You can also send a request to obtain a bucket's objects with all version IDs.
  • All object versions except deletion marks stored on OBS are charged.

If versions of objects in a bucket do not need to be controlled, you can suspend versioning. If versioning is disabled:

  • Objects of the previous versions remain on OBS. You need to manually delete unnecessary objects of the previous versions.
  • Objects can be downloaded by version ID. By default, the latest object is downloaded if the version ID is not specified.
  • All old object versions except deletion marks stored on OBS are charged.
Registration