Overview
In geodatabase editing, a task often takes 1-2 hours, and sometimes several days to process data. You may want to perform operations in complete isolation. During long editing sessions, if errors occur, you can undo or revert a single edit. When other users update the same object, you can be alerted to conflicts for resolution, rather than having later changes directly overwrite earlier ones.
The Version Control feature can accommodate multi-user editing and long transaction requirements. Without the need to lock or copy data, it allows multiple users to simultaneously edit the geodatabase without interfering with each other. When you work in your personal version, other users will not see your uncommitted data. Editing sessions can last for weeks or months, and you can commit your changes to the parent version as needed. This feature is suitable for scenarios such as geospatial data distribution and collaboration between fieldwork and office work.
Main Workflow of Version Control
When using the Version Control feature, you will mainly go through the following operational steps:

- Register Version: To use Version Control, you must first register a version for the dataset. This registration process is called versioning. Currently, we support versioning for point, line, region, text, attribute table, CAD, network, and model datasets.
- Create Version: A version represents a snapshot of the entire datasource at a specific moment. The data of a version includes all datasets under the containing datasource, both versioned and non-versioned. After creating a version, it can be distributed for multi-user editing.
- Version Editing: You can add or delete object records within the created child version and edit the attributes and geometry information of individual objects. However, batch editing of field values is not allowed in child versions. Currently, batch editing of field values is only supported in the default version, and the child version must have no uncommitted changes.
- Version Reconcile: You can commit changes to the default version at any time. Before committing, to prevent conflicts caused by other users modifying the same data, version reconciliation is required.
- Version Submit: Merge the data changes from the current editing version into the target version. The submit operation can only be completed after the reconcile operation is finished and no further modifications have been made to the target version.
Related Topics
Basic Vocabulary of Version Control