You can manage versions within an enterprise geodatabase (traditional versioning) or portal connection (branch versioning) using the Version Manager view. The Version Manager view displays all versions and their properties in a given enterprise geodatabase or portal connection. Using the ribbon items and the right-click context menu, you can make edits to the versions that the connected user owns, modify version properties, delete versions, create new versions, or reconcile and post edits.
The image below shows the Version Manager and its ribbon. You can see that a user named ANN has used the version manager to create a new child version from the default version, named it Manager, and has given the version public access level permissions:
For branch versions, the versions that are visible in the view depend on the user's permissions, the service, and the access level of the versions:
When accessing the version manager from a service:
- The service publisher and the portal administrator can see all of the versions available in that service.
- A connected user, that is not the service owner or portal administrator, can see all or the versions that they own and any public and protected versions in that service.
When connected as the geodatabase administrator through a database connection, the version manager will display all versions from the workspace (e.g., the view is not filtered by services or access).
Open the Version Manager
You can open the Version Manager through the Data Source tab, which becomes available when an enterprise geodatabase or portal connection is selected in the List By Data Source view of the Contents pane.
In order to perform create, modify, and delete operations for branch versions the Version Manager needs to be accessed via a portal connection.
- Click the List By Data Source button in the Contents pane.
- Select the enterprise geodatabase or portal connection data source for which you'd like to manage versions on.
The Data Source tab appears.
- Click the Versioning tab and in the Versioning group click Version Manager. This opens the Version Manager view.
Create a new version
You can create a new branch or traditional version in the Version Manager or on the Versioning tab. When you create a version, you specify its name, an optional description, and the level of access other users have to the version. As the owner of the version, you can change these properties or delete the version any time.
You set the access level of a version to protect it from being edited or viewed by users other than the version owner. You can set one of the following three permissions on a version:
- Private—Only the owner or the geodatabase administrator can view the version and modify versioned data or the version itself.
- Protected—Any user can view the version, but only the owner or the geodatabase administrator can edit datasets in the version or the version itself.
- Public—Any user can view the version. Any user who has been granted read/write (update, insert, and delete) permissions on datasets can modify datasets in the version.
When setting access permissions on versions, consider your version workflow strategy along with the needs of the various users working within that framework. Use version access along with dataset permissions to control access to the data.
The DEFAULT branch version can only have public or protected access permissions. Private is not an option as users accessing published services with version management capabilities need to be able to see DEFAULT to create child versions for editing.
When setting version access in traditional versions, pay particular attention to how you'll safeguard the default version. The default version is the ancestor of every other version in a geodatabase and usually represents the published version of a geodatabase. Any features or rows deleted from the default version, even though they are recorded in the version delta files, cannot be restored unless the dataset is unregistered as versioned (assuming the database has not been compressed beforehand). Unregistering a dataset as versioned restores the dataset to its configuration at the last database compression; however, all uncompressed edits are lost. Given that, it is essential to safeguard the default version to prevent accidental alterations or corruption.
You can protect the default version in one of the following three ways:
- If you've chosen a strategy where users directly edit the default version, you can create a new version as a read-only, archive version of the default version. Any features accidentally deleted from the default version can be restored from this version as required.
- If you've chosen a strategy where some, but not all, users need to edit the default version directly, you can create new versions from the default version for some of the users to edit.
- If you've chosen a strategy where no one directly edits the default version, the geodatabase administrator should set the access level of the default version to protected. Never set the access level on the default version to private; doing so prevents all users except the geodatabase administrator from connecting to the database. With the permissions set to protected, any user can view the default version, but only the geodatabase administrator can edit the default version directly and reconcile and post edits to it from other versions.
Create a new version in the Version Manager
You can create a new traditional or branch version in the Version Manager, which will be owned by the connected user.
- On the
Versions tab, in the Manage Versions group, click New Version.
This adds a new row to the table, and a cursor appears in the Name column.
- Provide a new version name.
- Double-click the Parent column and select a parent version for the new version.
For branch versioning the parent is always DEFAULT.
- Double-click the Description column and provide a description for the new version.
- Select the Access column and select an access level.
- Click Save on the Versions ribbon to commit the version to the geodatabase.
Create a new version from the Versioning tab
You can also create a new branch or traditional version directly from the Versioning tab.
- On the Versioning tab, click the New Version button to open the New Version creation dialog box. The Parent Version that is listed at the top is the version you are currently connected to.
Note:For branch versioning, the Parent Version will always be DEFAULT.
- Select the Name text box and provide a name for the new version.
- Select the Description text box and provide a description for the new version.
- Choose one of the access permission levels from the radio buttons in the Access Permission section.
- Optionally, you can check the Change to this new version check box. If you do, when you click OK, the map will immediately switch your geodatabase connection to reference the new version you've just created.
- Click OK to create the new version
Modify version properties
You can edit the properties of any versions that you own by double-clicking the column of the property, making edits, and clicking Save on the Versions tab. The version properties that can be changed by the version owner or the geodatabase administrator include the version name, description, and access level.
Delete a version
Versions can be deleted when they are no longer needed. For example, if a version was created for edits made on a certain project, all edits that were made in that version have been reconciled and posted to a target version, and the project is over, you can delete the project version.
For traditional versioning, deleting unneeded versions simplifies version management and also keeps the version from potentially blocking the default version from being compressed to state 0.
Only the owner or the geodatabase administrator can delete a version.
If you are connected as the geodatabase administrator through a database connection (not a portal), you are still able to delete branch versions in the Version Manager.
Be aware of the following important information before you delete any version:
- If you delete a traditional version that has child versions that you own (or, if you are connected to the geodatabase as the geodatabase administrator), the version and all its descendent versions will be deleted.
- If you are not connected as the geodatabase administrator and the traditional version you want to delete has any descendent versions that you do not own, you will not be able to delete your version.
- If you delete a version that contained edits that had not been reconciled and posted to a target version, you will lose all those edits.
- If you delete an historical marker that is currently in use in another map or project, that map will lose its data sources that pointed to that historical marker.
- You cannot delete the default version; it is required for your geodatabase to function.
To delete a version that you are sure is no longer needed, do the following:
- On the Versioning tab, click Version Manager in the Versioning group to open the Version Manager.
- To delete a version you own, select the row by clicking the left-most column beside the version name you want to delete. With the whole row highlighted, right-click the row and select Delete Version from the context menu, or press the Delete key, or click the Delete button on the Versions tab.
- On the Versions tab, in the Manage Versions group, click the Save button to commit your changes.
If you want to discard your changes without committing them to the geodatabase, close the Versions view.
If you have not saved your edits and want to return the deleted version to its original state, right-click the row and click Restore Version. The strikethrough will be removed, and this version will not be deleted upon saving your edits.
If you are deleting a traditional version, you will be prompted to be sure you want to delete the version and all of its children (if any exist). Click OK if you want to delete the traditional version and all its children.
Search, filter, or refresh the versions displayed in the Version Manager
To find and modify a specific version in the enterprise geodatabase or portal connection, you can filter the versions by owner, search for a specific version name, or refresh the view.
To filter the versions listed in the Version Manager by owner, click the Owner drop-down arrow in the Filter Versions group on the Versions ribbon. The drop-down list includes geodatabase users that own a version. Select the desired owner name from the drop-down list, and the Version Manager displays only the versions owned by that user. To clear the filter and view versions owned by all users, select the empty value at the top of the drop-down list.
To search for a version by the version name, you can use the Name search box in the Filter Versions group on the Versions tab. As you type text, only those versions that have the matching text display in the Version Manager.
Click Refresh Versions in the Filter Versions group on the Versions tab to refresh the view to display the most recent information for all versions in the enterprise geodatabase.
Reconcile and post edits in the Version Manager view
To reconcile and post edits in the Version Manager view, click Reconcile/Post in the Manage Versions group on the Versions tab. Clicking this button opens the Reconcile Versions geoprocessing tool, which you can execute to reconcile versions, and optionally post versions after you reconcile. Alternatively, you can reconcile and post from the Data Source tab, which allows you to view and resolve conflicts in the Conflict Manager before posting. You can read more about this process in Reconcile and post edits to a version.