Version Control and Locking Resources

Versioning applies to various entities, including requirements, tests, resources, favorites, and favorite-folders.

An exception is thrown on use of check-in, check-out, undo-check-out, or versions on entities that do not support versioning.

A lock prevents another user from editing the resource. Locking a resource does not result in creation of a new version.

Locking applies to various entities, including requirement, test, and defect entities.

To preserve data integrity, either lock or check-out an entity before updating. Use check-out and check-in if versioning is enabled. Use locking if versioning is not enabled for the project. Locking is not required to perform an update, but we strongly recommend locking to preserve data integrity.

How to Check if Versioning is Enabled

Get the entity descriptor for an entity. For example:

GET .../qcbin/rest/domains/DOMAIN_NAME/projects/PROJECT_NAME/customization/entities/test

ACCEPT: application/xml

Examine the SupportsVC element of the returned XML.

If the value is false, versioning is not enabled for the project. For example:

<SupportsVC url="tests/{entity_id : [0-9]+}/versions">false</SupportsVC>

If the value is true, versioning is enabled. For example:

<SupportsVC url="tests/{entity_id : [0-9]+}/versions">true</SupportsVC>