logotipo de sistemas purosConector pure-systems 2024 para software de gestión de código fuentepure::variants – Conector para
Manual de gestión de código fuente
Tecnología paramétrica GmbH
Versión 6.0.7.685 para pure::variants 6.0
Derechos de autor © 2003-2024 Parametric Technology GmbH
2024

Introducción

El conector pure::variants para la gestión del código fuente (Connector) permite a los desarrolladores gestionar la variabilidad del código fuente mediante pure::variants. La gestión del código fuente de pure::variants ofrece una oportunidad flexible para sincronizar las estructuras de directorios y el código fuente. fileEs muy fácil con los modelos pure::variants. De esta forma, la gestión de variantes se puede aplicar incluso a proyectos de software complejos. Además, las conexiones entre las características de pure::variants y el código fuente se pueden gestionar más fácilmente con el constructor y son muy accesibles a través de la Gestión del código fuente.
1.1. Requisitos de software
El conector pure::variants para la gestión de código fuente es una extensión para pure::variants y está disponible en todas las plataformas compatibles.
1.2. Instalación
Consulte la sección Conectores de pure::variants en la Guía de configuración de pure::variants para obtener información detallada sobre cómo instalar el conector (menú Ayuda -> Contenido de la ayuda y luego Guía de configuración de pure::variants -> Conectores de pure::variants).
1.3. Acerca de este manual
Se espera que el lector tenga conocimientos básicos y experiencia con pure::variants. Consulte el material introductorio antes de leer este manual. El manual está disponible en la ayuda en línea y en formato PDF imprimible aquí.

Usando el conector

2.1. Inicio de pure::variants
Dependiendo del método de instalación utilizado, inicie Eclipse con pure::variants habilitado o, en Windows, seleccione el elemento pure::variants del menú del programa.
Si la perspectiva Gestión de variantes aún no está activada, hágalo seleccionándola en Abrir perspectiva->Otros… en el menú Ventana.
2.2. Importar un árbol de directorios a un modelo de familia
Antes de importar un árbol de directorios a un modelo de familia, se debe crear un proyecto de variantes. También es recomendable tener las características definidas en un modelo de características. Consulte la documentación de pure::variants para obtener ayuda sobre estos pasos.
La importación real se inicia seleccionando la acción Importar… en el menú contextual de Proyectos view o con el menú Importar… en el File Menú. Seleccione Modelos de variantes o Proyectos en la categoría Gestión de variantes y presione Siguiente. En la página siguiente, seleccione Importar un modelo de familia desde las carpetas de origen y presione Siguiente nuevamente.
Elija el tipo de código fuente que desea importar
Aparece el asistente de importación (consulte la Figura 1, “Página del asistente de importación para seleccionar el tipo de código fuente que se puede importar”). Seleccione un tipo de proyecto para importar y presione Siguiente. Cada tipo contiene un conjunto predefinido de file tipos a importar al modelo.
Figura 1. Página del asistente de importación para seleccionar el tipo de código fuente que se puede importarConector pure-systems 2024 para software de gestión de código fuente - Figura 1Seleccionar origen y destino
En la siguiente página del asistente (Figura 2, “Página del asistente de importación para seleccionar el origen y el destino de la importación”) se deben especificar el directorio de origen y el modelo de destino.
Pulse el botón Explorar… para seleccionar el directorio donde se encuentra el código fuente que se debe importar. De forma predeterminada, se selecciona el espacio de trabajo actual, ya que puede ser un punto útil para comenzar a navegar.
A continuación, puede especificar patrones de inclusión y exclusión. Estos patrones deben ser expresiones regulares de Java. Cada ruta de entrada, relativa a la carpeta raíz de origen, se verifica con estos patrones. Si el patrón de inclusión coincide, se importa una carpeta; si el patrón de exclusión no coincide, es decir, el patrón de inclusión preselecciona las carpetas que se importarán, mientras que el patrón de exclusión restringe esta preselección.
Después de seleccionar el directorio del código fuente, se debe definir un modelo de destino. Por lo tanto, seleccione un proyecto de variante o una carpeta donde se debe almacenar el modelo e ingrese un nombre de modelo. file El nombre se amplía automáticamente con la extensión .ccfm si no se proporciona en este cuadro de diálogo. De manera predeterminada, se establecerá con el mismo nombre que el nombre del modelo. Esta es la configuración recomendada.
Una vez que se ha especificado la carpeta de origen y el nombre del modelo deseado, se puede finalizar el diálogo pulsando Finalizar. Si se pulsa el botón Siguiente, aparecerá otra página en la que se pueden realizar ajustes adicionales.
Figura 2. Página del asistente de importación para seleccionar el origen y el destino de la importaciónConector pure-systems 2024 para software de gestión de código fuente - Figura 2Cambiar preferencias de importación
En la última página del asistente (Figura 3, “Página del asistente de importación para definir una configuración individual”) existen preferencias que se pueden realizar para personalizar el comportamiento de importación para el proyecto de software importado.
La página de diálogo muestra una tabla donde se encuentran los siguientes elementos: file Se definen los tipos que serán considerados por el proceso de importación.
Cada línea consta de cuatro campos.

  • El campo Descripción contiene un breve texto descriptivo para identificar el file tipo.
  • El File El campo de patrón de nombre se utiliza para seleccionar fileLos valores que se importarán cuando coincidan con el valor del campo. El campo utiliza la siguiente sintaxis:
  1. El caso de uso más común puede ser un file extensión. La sintaxis habitual es .EXT, donde EXT es el valor deseado. file extensión (por ejemplo .java).
  2. Otra situación común es una especial file, como una marcafile. Por lo tanto, es posible hacer coincidir exactamente file nombre. Para ello, solo tienes que introducir el file nombre en el campo (por ejemplo, build.xml).
  3. En algunos casos, los deseos de mapeo son más específicos, por lo que solo fileSe deben importar los que coinciden con un patrón especial. Para cumplir con este requisito, es posible utilizar expresiones regulares en el File campo de patrón de nombre.
    Describir la sintaxis de las expresiones regulares excedería el propósito de esta ayuda. Consulte la sección de expresiones regulares del capítulo de referencia en la guía del usuario de pure::variants (por ejemplo, .*).
  • El campo de tipo de elemento mapeado establece la asignación entre un file tipo y un tipo de elemento de familia pure::variants. El tipo de elemento de familia es un descriptor para la fuente file para proporcionar más información al elemento mapeado en el modelo importado. Las selecciones típicas son ps:class o ps:makefile.
  • El mapeado file El campo de tipo establece la asignación entre un file tipo y un pure::variants file tipo. El file El tipo pure::variants es un descriptor para la fuente file para proporcionar más información al elemento mapeado en el modelo importado. Las selecciones típicas son impl para implementaciones o def para definición files.

Figura 3. Página del asistente de importación para definir una configuración individualConector pure-systems 2024 para software de gestión de código fuente - Figura 3Nuevo file Se pueden agregar tipos utilizando el botón Agregar asignación. Todos los campos se completan con el valor indefinido y el usuario debe completarlos. Para editar un valor en un campo, simplemente haga clic en el campo con el mouse. El valor se vuelve editable y se puede cambiar. No es posible cambiar el valor predeterminado. file Patrones de nombres de la tabla. Para que la personalización sea flexible, es posible deseleccionar un patrón de nombres. file Escriba deseleccionando la fila. Deseleccionado file Los patrones de nombres permanecen en la configuración pero no serán utilizados por el importador. Definidos por el usuario file Los tipos se pueden eliminar nuevamente utilizando el botón Eliminar asignación.
Por defecto un Otro files file El patrón de nombre está disponible en la tabla, pero no está seleccionado. Normalmente, no se desea importar todos los patrones. files pero esto se puede cambiar fácilmente seleccionando la fila correspondiente.
Hay tres opciones de importación generales para personalizar el comportamiento del importador.

  • No importar directorios sin coincidencia files (por ejemplo, directorios CVS).
    Si el importador encuentra un directorio donde no hay coincidencias file está en él y ningún subdirectorio tiene una coincidencia file, el directorio no se importará. Esto suele ser útil si los proyectos se gestionan mediante sistemas de gestión de versiones como CVS. Para CVS, cada directorio relevante contiene un directorio CVS donde no se importan los archivos irrelevantes. fileLos s se almacenan. Si se selecciona esta opción y el CVS-files no coinciden con ninguna file tipo definido anteriormente, el directorio no se importará como un componente en el Modelo Familiar.
  • Clasificar filesy directorios.
    Habilite esta opción para ordenar files y directorios cada uno en orden alfabético.
  • Manejo de ruta de importación.
    Para una mayor sincronización, el importador debe almacenar la ruta original de todos los elementos importados en el modelo.
    En muchos casos, los modelos familiares se comparten con otros usuarios. La estructura de directorios puede ser diferente para cada usuario. Para admitir la mayoría de los escenarios de uso más comunes, el importador puede funcionar en diferentes modos:
Absoluto La ruta absoluta al elemento importado se almacenará en el modelo. Para una sincronización posterior y durante la transformación, fileLos archivos deben colocarse exactamente en la misma ubicación que durante la primera importación.
Relativo al espacio de trabajo Las rutas se almacenan en relación con la carpeta del espacio de trabajo. Para la sincronización, files debe ser parte del espacio de trabajo de Eclipse. La transformación debe utilizar el espacio de trabajo de Eclipse como directorio de entrada.
Relativo al proyecto Las rutas se almacenan en relación con el proyecto. Para la sincronización, fileLos archivos son parte del proyecto dentro de Eclipse. La transformación debe utilizar la carpeta del proyecto como directorio de entrada.
Relativo a la ruta Las rutas se almacenan en relación con la ruta dada. Para la sincronización, fileLos archivos deben colocarse exactamente en la misma ubicación. El directorio de entrada de la transformación es el mismo que la ruta relativa durante la importación.

Todas las preferencias de este cuadro de diálogo se almacenan de forma permanente. No es necesario volver a realizar las personalizaciones cada vez que se ejecuta la importación. Esto hace que el flujo de trabajo de importación sea fácil y rápido.
2.3. Actualización de modelos desde el árbol de directorios
Pulse el botón Sincronizar Conector pure-systems 2024 para software de gestión de código fuente - iconopara sincronizar un modelo importado con su ruta de directorio. La ruta raíz del proyecto se almacena en el modelo, por lo que se sincronizará con el mismo directorio que antes. Para habilitar el botón Sincronizar, abra el modelo y seleccione cualquier elemento. Después de presionar el botón Sincronizar, se abre un Editor de comparación donde se oponen el Modelo de familia actual y el modelo de la estructura de directorio actual (consulte la Figura 4, “Actualización del modelo desde el árbol de directorios en el Editor de comparación”).
Figura 4. Actualización del modelo desde el árbol de directorios en el editor de comparación   Conector pure-systems 2024 para software de gestión de código fuente - Figura 4El editor de comparación se utiliza en pure::variants para comparar versiones de modelos, pero en este caso se utiliza para comparar la estructura física del directorio (que se muestra en la parte inferior derecha) con el modelo actual de pure::variants (parte inferior izquierda). Todos los cambios se enumeran como elementos separados en la parte superior del editor, ordenados por los elementos afectados.
Al seleccionar un elemento de esta lista, se resalta el cambio respectivo en ambos modelos.ampEn el lado derecho, se marca un elemento agregado con un cuadro y se lo conecta con su posición factible en el modelo en el lado izquierdo. La barra de herramientas Fusionar entre las ventanas del editor superior e inferior proporciona herramientas para copiar cambios individuales o incluso todos (sin conflictos) como un todo desde el modelo de árbol de directorios al modelo de características.
Nota
La sincronización se realiza con la última configuración del importador utilizada. Esto permite actualizar el modelo con otras configuraciones realizadas mientras se realizaba la importación.

Uso del indexador de relaciones

El conector para la gestión del código fuente mejora las relaciones View con información sobre las conexiones entre los elementos del modelo pure::variants y el código fuente. Se agregan relaciones para las características que se utilizan en las condiciones de los elementos ps:condxml y ps:condtext.
Para ps:flag y ps:flagfile Elementos de la ubicación de las constantes del preprocesador en el código fuente de C/C++ fileSe muestran las s. Además, se muestran las ubicaciones de las constantes del preprocesador coincidentes para una característica seleccionada mediante el uso de la correlación entre los nombres únicos de las características y las constantes del preprocesador.
3.1. Cómo agregar el indexador de relaciones a un proyecto
El indexador de relaciones se puede activar en una página de propiedades de proyecto especial. Seleccione el proyecto y elija el elemento Propiedades en el menú contextual. En el cuadro de diálogo que aparece, seleccione la página Indexador de relaciones.
Figura 5. Página de propiedades del proyecto para el indexador de relacionesConector pure-systems 2024 para software de gestión de código fuente - Figura 5

El indexador de relaciones se activa para el proyecto seleccionando la opción Habilitar indexador de relaciones (1). Después de habilitar el indexador, hay algunas opciones más para definir el comportamiento específico del proyecto. La indexación de las condiciones pure::variants y las constantes del preprocesador C/C++ se pueden activar por separado (2). La lista con file Los patrones de nombres (3) se utilizan para seleccionar el files para indexar. Solo fileSe escanean los que coinciden con uno de los patrones. Agregue el “*” como patrón para escanear todos files de un proyecto.
Después de activar el indexador para un proyecto, se agrega un generador al proyecto. Este generador escanea los cambios files para nuevas relaciones con elementos del modelo pure::variants automáticamente.
3.2. Las relaciones con el código fuente
Con el indexador de relaciones activado, las Relaciones View Contiene entradas adicionales. Estas entradas muestran el nombre de la file y el número de línea del punto de variante. La información sobre herramientas muestra la sección correspondiente de la fileAl hacer doble clic en la entrada, file se abrirá en un editor.
pure::variants Condiciones
La condición pure::variants se puede utilizar para incluir o excluir secciones de una file Dependiendo de la selección de una característica, el Indexador de condiciones busca dichas reglas y extrae las características a las que se hace referencia. Si se selecciona una característica de este tipo en el editor, las Relaciones View se mostrará todo files y líneas donde se encuentra una condición con la característica seleccionada (ver Figura 6, “Representación de una Condición en las Relaciones View”).
Figura 6. Representación de una condición en las relaciones ViewConector pure-systems 2024 para software de gestión de código fuente - Figura 6Para obtener una explicación detallada sobre cómo definir condiciones, consulte la sección ps:condtext del capítulo 9.5.7 de la Guía del usuario de pure::variants (Referencia–>Tipos de elementos fuente predefinidos–>ps:condtext).
Constantes del preprocesador de C/C++
El indexador del preprocesador C/C++ escanea files para constantes utilizadas en reglas de preprocesador (por ejemplo, #ifdef, #ifndef, …).
Si una ps:flag o ps:flagfile Se selecciona el elemento Relaciones View muestra el uso de la constante de preprocesador definida.
Las relaciones View También muestra constantes del preprocesador conectadas a las características mediante patrones de mapeo. Para ello, los patrones se expanden con los datos de la característica seleccionada. Los símbolos resultantes se utilizan para buscar constantes del preprocesador coincidentes. Figura 7, “Representación de una constante de preprocesador C/C++ en las relaciones View" muestra un example con el patrón fame{Name}. El patrón se expande con el nombre único de la característica a fameNative. En el código indexado hay 76 ubicaciones donde se utiliza la constante de preprocesador fameNative.
Estas ubicaciones se muestran en las Relaciones ViewLos patrones se pueden definir en las preferencias (ver Sección 3.3, “Las Preferencias”).
Figura 7. Representación de una constante de preprocesador de C/C++ en las relaciones ViewConector pure-systems 2024 para software de gestión de código fuente - Figura 7

3.3 Las preferencias
Para cambiar el comportamiento predeterminado del indexador, abra las preferencias de Eclipse y seleccione la página Indexador de relaciones en la categoría Administración de variantes. La página muestra dos listas.
Figura 8. Página de preferencias del indexador de relacionesConector pure-systems 2024 para software de gestión de código fuente - Figura 8La lista superior contiene los valores predeterminados. file Patrones para el indexador (1). Esta lista es la configuración inicial de patrones para los proyectos recién habilitados.
La lista inferior contiene la asignación entre las características y las constantes del preprocesador (2). Esta asignación se utiliza para todos los proyectos. La Tabla 1, “Reemplazos de asignación admitidos” muestra todos los reemplazos posibles.
Tabla 1. Reemplazos de mapeo admitidos

Comodín Descripción  Example: CaracterísticaA
Nombre el nombre único de la función seleccionada BANDERA_{Nombre} – BANDERA_CaracterísticaA
NOMBRE El nombre único en mayúsculas de la función seleccionada BANDERA_{NOMBRE} – BANDERA_CARACTERÍSTICAA
nombre El nombre único en minúscula de la función seleccionada bandera__{nombre} – flag_featurea

logotipo de sistemas puros

Documentos / Recursos

Conector pure-systems 2024 para software de gestión de código fuente [pdf] Manual del usuario
2024, 2024 Conector para software de gestión de código fuente, Conector para software de gestión de código fuente, Software de gestión de código fuente, Software de gestión, Software

Referencias

Deja un comentario

Su dirección de correo electrónico no será publicada. Los campos obligatorios están marcados *