throws InvalidItemStateException, LabelExistsVersionException,
VersionException, RepositoryException {
// perform operation on fresh storage to not interfere
// with pending changes in the workspace.
Root fresh = sessionDelegate.getContentSession().getLatestRoot();
VersionStorage storage = new VersionStorage(fresh);
String vhRelPath = PathUtils.relativize(VersionStorage.VERSION_STORAGE_PATH,
checkNotNull(versionHistory).getPath());
versionManager.addVersionLabel(storage, vhRelPath,
checkNotNull(version).getIdentifier(),
checkNotNull(oakVersionLabel),