Conciliar versiones (Administración de datos)

Resumen

Concilia una versión o varias versiones con una versión de destino.

Más información sobre cómo conciliar y publicar versiones

Uso

  • El proceso de conciliación requiere que usted sea el único usuario que actualmente está editando la versión, y el único que la editará a lo largo del proceso de conciliación hasta que la guarde o la publique.

  • El proceso de conciliación requiere que usted tenga permisos completos para todas las clases de entidad que han sido modificadas en la versión que se está editando.

  • Las herramientas de versionado funcionan con las geodatabases corporativas. Las geodatabases de archivos no admiten versiones.

  • Esta herramienta permite conciliar/publicar datos publicados desde un espacio de trabajo de rama con funcionalidades de administración de versiones habilitadas. No se admite la conciliación/publicación de versionado en rama mediante un archivo de conexión de geodatabase.

  • La geodatabase se ha concebido para administrar y ser compatible de manera eficiente con transacciones largas que utilicen versiones.

  • El proceso de conciliación detecta las diferencias entre la versión de edición y la versión de destino y las marca como conflictos. Si hay conflictos, deben resolverse.

  • Después de ejecutar correctamente el proceso conciliación con la opción Reconciliar todas las versiones, todas las versiones en la geodatabase aparecerán iguales.

Sintaxis

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})
ParámetroExplicaciónTipo de datos
input_database

La geodatabase corporativa que contiene las versiones a conciliar. El valor predeterminado es usar el entorno del espacio de trabajo de geoprocesamiento.

Para el versionado en rama, será la URL del servicio de entidades (es decir, https://mysite.mydomain/server/rest/services/ElectricNetwork/FeatureServer).

Workspace
reconcile_mode

Especifica las versiones que se conciliarán cuando se ejecuta la herramienta.

Si la entrada es un espacio de trabajo versionado en rama, la única opción válida para este parámetro es conciliar todas las versiones.

  • ALL_VERSIONSConcilie versiones de edición con la versión de destino. Esta es la opción predeterminada.
  • BLOCKING_VERSIONSConcilie versiones que están bloqueando la compresión de la versión de destino. Esta opción usa el orden de conciliación recomendado.
String
target_version
(Opcional)

El nombre de cualquier versión que sea ancestro directo de la versión de edición, como la versión principal o la predeterminada.

Normalmente, contiene las ediciones de otras versiones que desea incluir en la versión de edición.

Si la entrada es un espacio de trabajo versionado en rama, la única opción válida para este parámetro es conciliar con la versión predeterminada.

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

El nombre de la versión o versiones de edición que se conciliarán con la versión de destino seleccionada. Puede ser un nombre de versión individual o una lista de nombres de versiones.

String
acquire_locks
(Opcional)

Especifica si se adquirirán bloqueos de entidad.

  • LOCK_ACQUIREDSe adquieren bloqueos durante el proceso de conciliación. Use esta opción si su intención es publicar ediciones. Garantiza que la versión de destino no se haya modificado en el tiempo que hay entre las operaciones de conciliación y publicación. Esta es la opción predeterminada.
  • NO_LOCK_ACQUIREDNo se adquieren bloqueos durante el proceso de conciliación. Esto permite que varios usuarios realicen la conciliación en paralelo. Use esta opción si la versión editada no se publicará en la versión de destino porque existe la posibilidad de que la versión de destino sea modificada en el lapso de tiempo que hay entre las operaciones de conciliación y publicación.
Boolean
abort_if_conflicts
(Opcional)

Especifica si el proceso de conciliación se cancelará si se encuentran conflictos entre la versión de destino y la versión de edición durante el proceso de conciliación.

  • NO_ABORTLa conciliación no se cancelará si se encuentran conflictos. Esta es la opción predeterminada.
  • ABORT_CONFLICTSLa conciliación se cancelará si se encuentran conflictos.
Boolean
conflict_definition
(Opcional)

Especifica si las condiciones requeridas para que se genere un conflicto están definidas por objeto (fila) o por atributo (columna).

  • BY_OBJECTCualquier cambio aplicado a la misma fila o entidad en la versión principal y secundaria producirá un conflicto durante la conciliación. Esta es la opción predeterminada.
  • BY_ATTRIBUTESolo los cambios aplicados al mismo atributo (columna) de la misma fila o entidad en la versión principal y secundaria se marcarán como conflictos durante la conciliación. Los cambios a atributos diferentes no se considerarán un conflicto durante la conciliación.
String
conflict_resolution
(Opcional)

Especifica la resolución si se detecta un conflicto.

Si la entrada es un espacio de trabajo versionado en rama, la opción predeterminada es favorecer la versión de edición.

  • FAVOR_TARGET_VERSIONTodos los conflictos se resuelven en favor de la versión de destino. Esta es la opción predeterminada para el versionado tradicional.
  • FAVOR_EDIT_VERSIONTodos los conflictos se resuelven en favor de la versión de edición. Esta es la opción predeterminada para el versionado en rama.
String
with_post
(Opcional)

Especifica si la sesión de edición actual se publicará en la versión de destino conciliada.

  • NO_POSTLa versión de edición actual no se publicará en la versión de destino después de la conciliación. Esta es la opción predeterminada.
  • POSTLa versión de edición actual se publicará en la versión de destino después de la conciliación.
Boolean
with_delete
(Opcional)

Especifica si la versión de edición conciliada se eliminará tras la publicación. Este parámetro solo se aplica si el parámetro with_post tiene el valor POST.

  • DELETE_VERSIONLa versión de edición actual que se concilió se eliminará después de publicarla en la versión de destino.
  • KEEP_VERSIONLa versión de edición actual que se concilió no se eliminará. Esta es la opción predeterminada.
Boolean
out_log
(Opcional)

El nombre y la ubicación en los que se escribirá el archivo de registro. El archivo de registro es un archivo ASCII que incluye el contenido de los mensajes de geoprocesamiento.

File
proceed_if_conflicts_not_reviewed
(Opcional)

Especifica si la conciliación continuará si existen conflictos sin revisar antes de comenzar el proceso de conciliación. Si elige continuar, se perderán conflictos pendientes de sesiones anteriores después de ejecutar la herramienta. Este parámetro solo es aplicable al versionado en rama.

  • PROCEEDEl proceso de conciliación continuará si no se han revisado conflictos pendientes. Esta es la opción predeterminada.
  • NOT_PROCEEDEl proceso de conciliación no continuará si se detectan conflictos pendientes que no se han revisado.
Boolean
reconcile_checkout_versions
(Opcional)

Especifica si la conciliación incluirá versiones de réplicas de check-out. Cuando crea una réplica de check-out como parte de un flujo de trabajo de replicación de geodatabase, se crea una versión asociada en la geodatabase. Esta opción permite incluir o suprimir estos tipos de versiones de la lista de versiones que se van a conciliar. Este parámetro no es aplicable al versionado en rama.

  • RECONCILEEl proceso de conciliación incluirá versiones de réplicas de check-out. Esta es la opción predeterminada.
  • DO_NOT_RECONCILEEl proceso de conciliación no incluirá versiones de réplicas de check-out.
Boolean

Salida derivada

NombreExplicaciónTipo de datos
out_workspace

El espacio de trabajo de entrada actualizado.

Espacio de trabajo

Muestra de código

Ejemplo de ReconcileVersions (script independiente)

El siguiente script independiente muestra cómo usar la herramienta ReconcileVersions para conciliar todas las versiones que sean propiedad del usuario que se especifica en el archivo de conexión de base de datos.

# 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')

Información de licenciamiento

  • Basic: No
  • Standard: Sí
  • Advanced: Sí

Temas relacionados