Pregunta

¿Cómo puedo volver a la línea de base anterior? Tenemos un proyecto de desarrollo paralelo de UCM (multitransmisión). Cada desarrollador tiene una vista de instantánea en la secuencia de integración de Project. Los desarrolladores quieren ver una versión anterior de la aplicación en sus vistas de instantáneas para poder depurar la versión anterior de la aplicación para encontrar errores.

Cuando quiero cambiar las líneas de base de creación de una vista de instantánea existente, clearcase no me lo permite. Entonces, ¿cómo puedo hacer esto?

¿Fue útil?

Solución

Dado que emplea el término Línea de base, supondré que está utilizando UCM.

En una transmisión, no puede revertir una línea base hacia atrás.

Una posibilidad es hacer un flujo paralelo, con la línea de base deseada como base: esta es la forma más rápida.


Después de los cambios en esta nueva secuencia, puede hacer una nueva modificación para cambiar la línea base de la base, pero solo si esa nueva base está utilizando una línea base más reciente de la secuencia principal (no una línea base más antigua)


Para su necesidad específica, recomendaría una vista de instantánea que no sea UCM con una regla simple

element * thePreviousBaseline

Para que el desarrollador tenga:

  • su vista UCM actual para el desarrollo (siempre establecida en el ÚLTIMO de una rama asociada a una secuencia)
  • una segunda vista snasphot configurada para cualquier línea de base que necesite.

Esa segunda vista de instantánea no está completamente relacionada con el proyecto UCM y aprovecha la opción "completo" naturaleza de la línea base (verifique que su línea base se haya puesto como "completa", no "incremental". Si es "incremental", simplemente cambie su tipo y actualícela a completa)

Entonces, junto a su vista UCM de instantánea actual, puede crear en cualquier lugar que desee una vista que no sea snasphot:

cleartool mkview -snap -tag mylogin_myComponentname_csl_snap -vws myPathToViewStorage myPathToRootView
cd myPathToRootView
cleartool edcs
[add the selection rule: element * myOlderBaseline]
[add the load rule at the end: 'load /myVob_Including_MyComponent]
[save, type 'yes']

Eso está bien para la consulta / ejecución, pero si necesita parchear (es decir, escribir , revisar y en algunos archivos), entonces recomendaría una transmisión UCM por línea de base para ser parcheada .
De esa manera, la secuencia representa claramente el esfuerzo de parche para una línea base dada. No debería haber demasiados, a menos que ponga en producción una nueva versión de su aplicación cada cinco minutos ... lo cual no es aconsejable;)


Entonces, para resumir:

  • la vista de instantánea que no es UCM es única y sirve para una consulta / depuración rápida de una línea base más antigua a la vez.
  • para parches (modificación de fuente), crea una secuencia paralela correctamente nombrada, con la línea base correcta, y luego una vista UCM en ella. No solo puede depurar, sino también corregir algunos errores en una actividad, enviar esa actividad a la transmisión Int principal si ese error necesita ser readaptado en una transmisión superior. (nota: no siempre es necesario entregar todos los errores: pueden ser obsoletos en comparación con el estado actual del desarrollo)

Otros consejos

La forma en que he resuelto este problema es creando otra secuencia, una secuencia secundaria de la secuencia de integración. La forma más fácil de crear este Stream es abrir ClearCase Project Explorer (no Rational ClearCase Explorer) y navegar al Proyecto y luego al Stream en cuestión. Haga clic derecho en el flujo de integración y seleccione "Crear flujo secundario ..."

Haga clic en " Opciones avanzadas " y seleccione una línea base para cada componente. Haga esto seleccionando el componente y luego seleccionando " Cambiar ... " y seleccionando la línea de base específica que desea ver. Probablemente desee seleccionar "Solicitarme que cree una Vista para esta transmisión". Seleccione "Aceptar".

Cualquier desarrollador puede hacer esto. No necesita ser propietario de VOB o propietario de Proyecto o Stream.

Bueno, depende. En realidad, la respuesta está en configurar las especificaciones de configuración para que apunten a los archivos adecuados. Su especificación de configuración le dice a su vista qué versiones de elementos debe mirar. Pero cómo lo escribe depende del enfoque de su proyecto para las líneas de base. ¿Aplicaste una etiqueta para marcar esa línea de base? Si es así, y si solo desea leer y no pagar nada nuevo, su especificación de configuración puede ser tan simple como

element * <LABELNAME>

Si no usó etiquetas, también puede configurar sus especificaciones de configuración para mostrarle los archivos en función de las fechas. Se vuelve más complicado cuanto más reglas necesites agregar para restringir tus elecciones de elementos. Si tiene más detalles, puedo tratar de elaborar qué reglas podría necesitar. De lo contrario, leería los manuales que vienen con ClearCase. Si ve la Ayuda ampliada de ClearCase Explorer y luego hace " Visualización de los manuales de Rational ClearCase en línea " debería darle algunos enlaces a las referencias de comandos. Aquí es donde voy cuando necesito modificar mi especificación de configuración de alguna manera nueva.

Además, tenga en cuenta que solo usamos vistas dinámicas, por lo que no sé si las vistas instantáneas funcionan de manera diferente.

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