ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Help
  • Sign Out
ArcGIS Desktop

ArcGIS Online

The mapping platform for your organization

ArcGIS Desktop

A complete professional GIS

ArcGIS Enterprise

GIS in your enterprise

ArcGIS Developers

Tools to build location-aware apps

ArcGIS Solutions

Free template maps and apps for your industry

ArcGIS Marketplace

Get apps and data for your organization

  • Documentation
  • Support
Esri
  • Sign In
user
  • My Profile
  • Sign Out

ArcMap

  • Home
  • Get Started
  • Map
  • Analyze
  • Manage Data
  • Tools
  • Extensions

Reconcile Versions

  • Summary
  • Usage
  • Syntax
  • Code sample
  • Environments
  • Licensing information

Summary

Reconciles a version or multiple versions with a target version.

Learn more about how to reconcile and post versions

Usage

  • The reconcile process requires that you are the only user currently editing the version and the only user who will edit the version throughout the reconcile process until you save or post.

  • The reconcile process requires that you have full permissions to all the feature classes that have been modified in the version being edited.

  • Versioning tools only work with enterprise geodatabases. File and personal geodatabases do not support versioning.

  • The geodatabase is designed to efficiently manage and support long transactions using versions.

  • The reconcile process detects differences between the edit version and the target version and flags these differences as conflicts. If conflicts exist, they should be resolved.

  • After running the reconcile process successfully with the Reconcile all versions option, all versions in the geodatabase will appear the same.

Syntax

arcpy.management.ReconcileVersions(input_database, reconcile_mode, {target_version}, {edit_versions}, {acquire_locks}, {abort_if_conflicts}, {conflict_definition}, {conflict_resolution}, {with_post}, {with_delete}, {out_log}, {proceed_if_conflicts_not_reviewed}, {reconcile_checkout_versions})
ParameterExplanationData Type
input_database

The enterprise geodatabase that contains the versions to be reconciled. The default is to use the geoprocessing workspace environment.

Workspace
reconcile_mode

Specifies the versions that will be reconciled when the tool is executed.

  • ALL_VERSIONS —Reconciles edit versions with the target version. This is the default.
  • BLOCKING_VERSIONS —Reconciles versions that are blocking the target version from compressing. This option uses the recommended reconcile order.
String
target_version
(Optional)

The name of any version in the direct ancestry of the edit version, such as the parent version or the default version.

It typically contains edits from other versions that you want included in the edit version.

String
edit_versions
[edit_versions,...]
(Optional)

The name of the edit version or versions to be reconciled with the selected target version. This can be an individual version name or a list of version names.

String
acquire_locks
(Optional)

Specifies whether feature locks will be acquired.

  • LOCK_ACQUIRED —Locks will be acquired during the reconcile process. Use this option when the intention is to post edits. It ensures that the target version is not modified in the time between the reconcile and post operations. This is the default.
  • NO_LOCK_ACQUIRED —Locks will not be acquired during the reconcile process. This allows multiple users to reconcile in parallel. Use this option when the edit version will not be posted to the target version because there is a possibility that the target version may be modified in the time between the reconcile and post operations.
Boolean
abort_if_conflicts
(Optional)

Specifies whether the reconcile process will be aborted if conflicts are found between the target version and the edit version during the reconcile process.

  • NO_ABORT —The reconcile will not be aborted if conflicts are found. This is the default.
  • ABORT_CONFLICTS —The reconcile will be aborted if conflicts are found.
Boolean
conflict_definition
(Optional)

Specifies whether the conditions required for a conflict to occur are defined by object (row) or by attribute (column).

  • BY_OBJECT —Any changes to the same row or feature in the parent and child versions will conflict during reconcile. This is the default.
  • BY_ATTRIBUTE —Only changes to the same attribute (column) of the same row or feature in the parent and child versions will be flagged as a conflict during reconcile. Changes to different attributes will not be considered a conflict during reconcile.
String
conflict_resolution
(Optional)

Specifies the resolution if a conflict is detected.

  • FAVOR_TARGET_VERSION —All conflicts will be resolved in favor of the target version. This is the default.
  • FAVOR_EDIT_VERSION —All conflicts will be resolved in favor of the edit version.
String
with_post
(Optional)

Specifies whether the current edit session will be posted to the reconciled target version.

  • NO_POST —The current edit version will not be posted to the target version after the reconcile. This is the default.
  • POST —The current edit version will be posted to the target version after the reconcile.
Boolean
with_delete
(Optional)

Specifies whether the reconciled edit version will be deleted after posting. This parameter only applies if the with_post parameter is set to POST.

  • DELETE_VERSION —The current edit version that was reconciled will be deleted after being posted to the target version.
  • KEEP_VERSION —The current edit version that was reconciled will not be deleted. This is the default.
Boolean
out_log
(Optional)

The name and location where the log file will be written. The log file is an ASCII file containing the contents of the geoprocessing messages.

File
proceed_if_conflicts_not_reviewed
(Optional)

Specifies whether the reconcile will proceed if there are unreviewed conflicts that exist before starting the reconcile process. If you choose to proceed, outstanding conflicts from previous sessions will be lost upon tool execution. This parameter is only applicable to branch versioning.

  • PROCEED —The reconcile process will proceed if outstanding conflicts have not been reviewed. This is the default.
  • NOT_PROCEED —The reconcile process will not proceed if outstanding conflicts that have not been reviewed are detected.
Boolean
reconcile_checkout_versions
(Optional)

Specifies whether the reconcile will include checkout replica versions. If you are creating a checkout replica as part of a geodatabase replication workflow, an associated version is created in the geodatabase. This option allows you to include or remove these types of versions from the list of versions to be reconciled.

  • RECONCILE —The reconcile process will include checkout replica versions. This is the default.
  • DO_NOT_RECONCILE —The reconcile process will not include checkout replica versions.
Boolean

Derived Output

NameExplanationData Type
out_workspace

The updated input workspace.

Workspace

Code sample

ReconcileVersions example (stand-alone script)

The following stand-alone script demonstrates how to use the ReconcileVersions tool to reconcile all versions owned by the user specified in the database connection file.

# Name: ReconcileVersions.py
# Description: Reconciles all versions owned by a user with SDE.Default

# Import system modules
import arcpy, os

# Set workspace
workspace = 'C:/Data/connections/bender@production.sde'

# Set the workspace environment
arcpy.env.workspace = workspace

# Use a list comprehension to get a list of version names where the owner
# is the current user and make sure sde.default is not selected.
verList = [ver.name for ver in arcpy.da.ListVersions() if ver.isOwner
           == True and ver.name.lower() != 'sde.default']

arcpy.ReconcileVersions_management(workspace,
                                   "ALL_VERSIONS",
                                   "SDE.Default",
                                   verList,
                                   "LOCK_ACQUIRED",
                                   "NO_ABORT",
                                   "BY_OBJECT",
                                   "FAVOR_TARGET_VERSION",
                                   "NO_POST",
                                   "KEEP_VERSION",
                                   "c:\RecLog.txt")
print('Reconciling Complete')

Environments

  • Current Workspace

Licensing information

  • Basic: No
  • Standard: Yes
  • Advanced: Yes

Related topics

  • An overview of the Versions toolset
  • An overview of traditional versioning
  • The version editing process
  • A quick tour of reviewing conflicts
  • What is a version?
  • Version scenarios

ArcGIS Desktop

  • Home
  • Documentation
  • Support

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

About Esri

  • About Us
  • Careers
  • Esri Blog
  • User Conference
  • Developer Summit
Esri
Tell us what you think.
Copyright © 2021 Esri. | Privacy | Legal