ClearCase: ¿Cargando una versión anterior de un directorio específico?

StackOverflow https://stackoverflow.com/questions/634509

  •  10-07-2019
  •  | 
  •  

Pregunta

¿Cómo puedo cargar una versión anterior de un directorio en una vista de instantánea de UCM? En nuestro proyecto, un desarrollador registró código no compilado y no compilable para ClearCase. Otro desarrollador actualizó su vista y luego no estaba compilando el proyecto debido al código no compilado de los desarrolladores anteriores. Entonces, el desarrollador solo quiere obtener la versión anterior del directorio. ¿Cómo puedo hacer esto en la vista instantánea y solo para un directorio específico?

¿Fue útil?

Solución

Una primera posibilidad sería intentar seleccionar la versión correcta del subdirectorio para revertir, como:

element /path/to/directory /main/[branch]/[version]

Pero eso sería completamente incorrecto, porque:

  • los nombres de ruta extendidos no se admiten en la vista de instantánea, como se explica en este Pregunta SO .

  • para seleccionar el directorio solo no es suficiente (¡los archivos aún se seleccionarían como las ÚLTIMAS versiones disponibles en la transmisión!)

Y de todos modos, eso debería agregarse cuidadosamente en la especificación de configuración porque:

  • no puede agregar una regla de selección (elemento ...) en ninguna parte de la especificación de configuración:
    • si coloca esa regla al final, se ignorará (debido a las reglas de selección anteriores que se seleccionan primero)
    • si lo pones al principio, funcionará hasta el próximo " setcs -stream " aparición (o la próxima vez que presione "Sincronizar con la secuencia"). En ese momento, la especificación de configuración de una vista UCM (instantánea o dinámica) se regenera (de acuerdo con la configuración de la secuencia) y anula su regla personalizada.

Una posible solución sería modificar las especificaciones de configuración de su vista de instantánea con una regla basada en el tiempo
(Modifica el significado de la etiqueta de versión especial LATEST ; la regla selecciona de una rama la última versión que se creó antes de un momento determinado;
ver ' cleartool man config_spec '):

# Add the following temporary rule only for your sub-directory and below
# (hence the '...')
element /aVob/myComponent/mySubDirectory/... .../STREAM_NAME/LATEST -time dd-Month-yyyy

element "[02945650fb1411d68504000180bdc4b6=\aVob]/myComponent/..." .../STREAM_NAME/LATEST
element "[02945650fb1411d68504000180bdc4b6=\aVob]/myComponent/..." FOUNDATION_BASELINE -mkbranch STREAM_NAME
element "[02945650fb1411d68504000180bdc4b6=\aVob]/myComponent/..." /main/0 -mkbranch STREAM_NAME

Acabo de probar en una vista instantánea de UCM: funciona.
Adapte el formato de fecha a la fecha y hora que necesita para revertir ese subdirectorio al estado apropiado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top