pure-systems logopure-systems 2024-kobling for programvare for styring av kildekodepure::varianter – Kobling for
Håndbok for styring av kildekode
Parametric Technology GmbH
Versjon 6.0.7.685 for pure::varianter 6.0
Copyright © 2003-2024 Parametric Technology GmbH
2024

Introduksjon

pure::variants Connector for kildekodestyring (Connector) gjør det mulig for utviklere å administrere kildekodevariabilitet ved å bruke pure::varianter. Kildekodebehandlingen av pure::varianter gir en fleksibel mulighet til å synkronisere katalogstrukturer og kildekode fileer enkelt med rene::variants modeller. Derved kan administrasjonsvarianter brukes praktisk selv til komplekse programvareprosjekter. Videre kan forbindelser mellom rene::varianter-funksjoner og kildekode administreres enklere med byggherren og er svært tilgjengelige via kildekodeadministrasjonen.
1.1. Programvarekrav
Pure::variants Connector for Source Code Management er en utvidelse for pure::varianter og er tilgjengelig på alle støttede plattformer.
1.2. Installasjon
Vennligst se avsnittet pure::variants Connectors i pure::variants Setup Guide for detaljert informasjon om hvordan du installerer kontakten (meny Hjelp -> Hjelpeinnhold og deretter pure::variants Oppsettveiledning -> pure::variants Connectors).
1.3. Om denne håndboken
Det forventes at leseren har grunnleggende kunnskap om og erfaringer med rene::varianter. Vennligst se introduksjonsmaterialet før du leser denne håndboken. Håndboken er tilgjengelig i online-hjelp samt i utskrivbart PDF-format her.

Bruker kobling

2.1. Starter pure::varianter
Avhengig av installasjonsmetoden som brukes, start enten pure::variants-aktiverte Eclipse eller under Windows velg pure::variants-elementet fra programmenyen.
Hvis Variant Management-perspektivet ikke allerede er aktivert, gjør det ved å velge det fra Åpne perspektiv->Annet... i Vindu-menyen.
2.2. Importer et katalogtre til en familiemodell
Før du importerer et katalogtre til en familiemodell, må et variantprosjekt opprettes. Det er også hensiktsmessig å ha funksjoner definert i en funksjonsmodell allerede. Se dokumentasjonen for pure::variants for hjelp om disse trinnene.
Selve importen startes ved å velge handlingen Importer... enten i kontekstmenyen til prosjektene view eller med Import...-menyen i File meny. Velg Variant Models or Projects fra kategorien Variant Management og trykk Neste. På den følgende siden velger du Importer en familiemodell fra kildemapper og trykker på Neste igjen.
Velg type kildekode som skal importeres
Importveiviseren vises (se figur 1, "Side for importveiviseren for å velge typen kildekode som kan importeres"). Velg en prosjekttype å importere og trykk Neste. Hver type inneholder et forhåndsdefinert sett med file typer å importere til modellen.
Figur 1. Side i importveiviseren for å velge typen kildekode som kan importerespure-systems 2024-kobling for programvare for kildekodeadministrasjon - figur 1Velg Kilde og mål
På neste veiviserside (Figur 2, "Side til importveiviseren for å velge kilden og målet for importen") må kildekatalogen og målmodellen spesifiseres.
Trykk på Bla gjennom...-knappen for å velge katalogen der kildekoden finnes som skal importeres. Som standard er gjeldende arbeidsområde valgt fordi dette kan være et nyttig punkt for å begynne å navigere.
Nedenfor kan du spesifisere inkludere og ekskludere mønster. Disse mønstrene må være regulære java-uttrykk. Hver inngangsbane, i forhold til kilderotmappen, kontrolleres med disse mønstrene. Hvis inkluderingsmønsteret samsvarer, importeres en mappe hvis ekskluderingsmønsteret ikke samsvarer. Det betyr at inkluderingsmønsteret forhåndsvelger mappene som skal importeres, ekskluderingsmønsteret begrenser dette forhåndsvalget.
Etter å ha valgt kildekodekatalogen må en målmodell defineres. Velg derfor et variantprosjekt eller en mappe hvor modellen skal lagres og skriv inn et modellnavn. De file navnet utvides automatisk med .ccfm-utvidelsen hvis det ikke er gitt i denne dialogboksen. Som standard vil det være satt til samme navn som selve modellnavnet. Dette er den anbefalte innstillingen.
Etter at en hensiktsmessig kildemappe og ønsket modellnavn er spesifisert, kan dialogen fullføres ved å trykke på Fullfør. Hvis du trykker på Neste-knappen, kommer en ny side opp hvor flere innstillinger kan gjøres.
Figur 2. Side i importveiviseren for å velge kilden og målet for importenpure-systems 2024-kobling for programvare for kildekodeadministrasjon - figur 2Endre importinnstillinger
På den siste veivisersiden (Figur 3, "Side i importveiviseren for å definere en individuell konfigurasjon”) er det innstillinger som kan gjøres for å tilpasse importatferden for det importerte programvareprosjektet.
Dialogsiden viser en tabell der file typer er definert, som vil bli vurdert av importprosessen.
Hver linje består av fire felt.

  • Beskrivelse-feltet inneholder en kort beskrivende tekst for å identifisere file type.
  • De File navnemønsterfeltet brukes til å velge files som skal importeres når de samsvarer med feltverdien. Feltet bruker følgende syntaks:
  1. Den vanligste bruken kan være en file utvidelse. Den vanlige syntaksen er .EXT, hvor EXT er ønsket file utvidelse (f.eks. .java).
  2. En annen vanlig situasjon er en spesiell file, som et fabrikatfile. Derfor er det mulig å matche på eksakt file navn. For å gjøre dette, skriv bare inn file navn inn i feltet (f.eks. build.xml).
  3. I noen tilfeller er kartleggingsønskene mer spesifikke, så bare files som samsvarer med et spesielt mønster bør importeres. For å tilfredsstille dette kravet er det mulig å bruke regulære uttrykk i File navnemønsterfelt.
    Å beskrive syntaksen til regulære uttrykk ville overgå intensjonen med denne hjelpen. Se avsnittet om regulære uttrykk i referansekapittelet i brukerveiledningen for pure::variants (f.eks. .*).
  • Feltet Tilordnet elementtype setter tilordningen mellom en file type og en ren::varianter familieelementtype. Familieelementtypen er en beskrivelse for kilden file for å gi ytterligere informasjon til det kartlagte elementet i den importerte modellen. Typiske valg er ps:class eller ps:makefile.
  • Det kartlagte file type felt setter tilordningen mellom en file type og en ren::varianter file type. De file skriv inn pure::variants er en beskrivelse for kilden file for å gi ytterligere informasjon til det kartlagte elementet i den importerte modellen. Typiske valg er impl for implementeringer eller def for definisjon files.

Figur 3. Side i importveiviseren for å definere en individuell konfigurasjonpure-systems 2024-kobling for programvare for kildekodeadministrasjon - figur 3Ny file typer kan legges til ved å bruke knappen Legg til kartlegging. Alle felt fylles ut med verdien undefined og må fylles ut av brukeren. For å redigere en verdi i et felt, klikker du bare inn i feltet med musen. Verdien blir redigerbar og kan endres. Det er ikke mulig å endre standard file navn på mønstrene til bordet. For å gjøre en tilpasning fleksibel, er det mulig å velge bort en file skriv ved å fjerne merket for raden. Fravalgt file navnemønstre forblir i konfigurasjonen, men vil ikke bli brukt av importøren. Brukerdefinert file typer kan fjernes igjen ved å bruke knappen Fjern kartlegging.
Som standard en Annet files file navnemønster er tilgjengelig i tabellen, men er fravalgt. Vanligvis er det ikke ønskelig å importere alle files, men dette kan enkelt endres ved å velge tilsvarende rad.
Det er tre generelle importalternativer for å tilpasse atferden til importøren.

  • Ikke importer kataloger uten å matche files (f.eks. CVS-kataloger).
    Hvis importøren finner en katalog der det ikke samsvarer file er i den og der ingen underkatalog har en samsvarende file, vil ikke katalogen importeres. Dette er ofte nyttig hvis prosjekter administreres av versjonsstyringssystemer som CVS. For CVS inneholder hver relevant katalog en CVS-katalog der det er irrelevant files er lagret. Hvis dette alternativet er valgt og CVS-files stemmer ikke med noen file type definert ovenfor, vil ikke katalogen importeres som en komponent til familiemodellen.
  • Sortere files og kataloger.
    Aktiver dette alternativet for å sortere files og kataloger hver i alfabetisk rekkefølge.
  • Importveihåndtering.
    For ytterligere synkronisering må importøren lagre den opprinnelige banen til alle importerte elementer i modellen.
    I mange tilfeller deles familiemodeller med andre brukere. Katalogstrukturen kan være forskjellig for hver bruker. For å støtte de vanligste bruksscenariene kan importøren jobbe i forskjellige moduser:
Absolutt Den absolutte banen til det importerte elementet vil bli lagret i modellen. For senere synkronisering og under transformasjonen files må plasseres på nøyaktig samme sted som under den første importen.
I forhold til Workspace Banene lagres i forhold til arbeidsområdemappen. For synkronisering files må være en del av Eclipse-arbeidsområdet. Transformasjonen må bruke Eclipse-arbeidsområdet som inndatakatalog.
I forhold til prosjekt Stiene lagres i forhold til prosjektet. For synkronisering files er en del av prosjektet inne i Eclipse. Transformasjonen må bruke prosjektmappen som inndatakatalog.
I forhold til Path Banene lagres i forhold til den gitte banen. For synkronisering files må plasseres på nøyaktig samme sted. Transformasjonsinndatakatalogen er den samme som den relative banen under importen.

Alle preferanser i denne dialogboksen lagres vedvarende. De personlige tilpasningene må ikke gjøres om hver gang importen kjøres. Dette gjør importarbeidsflyten enkel og rask.
2.3. Oppdatering av modeller fra katalogtre
Trykk på Synkroniser-knappen pure-systems 2024-kobling for programvare for styring av kildekode - ikonfor å synkronisere en importert modell med dens katalogbane. Rotbanen til prosjektet er lagret i modellen slik at den vil synkroniseres til samme katalog som før. For å aktivere Synkroniser-knappen, åpne modellen og velg et hvilket som helst element. Etter å ha trykket på Synkroniser-knappen åpnes en sammenligningseditor der gjeldende familiemodell og modellen for gjeldende katalogstruktur står i motsetning (se figur 4, "Modeloppdatering fra katalogtre i sammenligningsredigering").
Figur 4. Modelloppdatering fra Directory Tree i Compare Editor   pure-systems 2024-kobling for programvare for kildekodeadministrasjon - figur 4Sammenligningseditoren brukes gjennom rene::varianter for å sammenligne modellversjoner, men i dette tilfellet brukes den til å sammenligne den fysiske katalogstrukturen (vises nederst til høyre) med gjeldende rene::varianter-modell (nedre venstre side). Alle endringer er oppført som separate elementer i den øvre delen av editoren, sortert etter de berørte elementene.
Ved å velge et element i denne listen fremheves den respektive endringen i begge modellene. I eksample, et ekstra element er merket med en boks på høyre side og koblet til sin mulige posisjon i modellen på venstre side. Sammenslåingsverktøylinjen mellom øvre og nedre redigeringsvindu gir verktøy for å kopiere enkelt eller til og med alle (ikke-konfliktende) endringer som en helhet fra katalogtremodellen til funksjonsmodellen.
Note
Synkroniseringen gjøres med de sist brukte importinnstillingene. Dette gjør det mulig å oppdatere modellen med andre innstillinger som ble gjort mens importen ble utført.

Bruke Relasjonsindekser

Koblingen for kildekodeadministrasjon forbedrer relasjonene View med informasjon om sammenhenger mellom rene::varianter modellelementer og kildekode. Relasjoner legges til for funksjoner som brukes i forholdene til ps:condxml- og ps:condtext-elementene.
For ps:flag og ps:flagfile elementer plasseringen av forprosessorkonstanter i C/C++-kilden files vises. I tillegg vises plasseringene til samsvarende preprosessorkonstanter for en valgt funksjon ved å bruke tilordningen mellom funksjonens unike navn og preprosessorkonstanter.
3.1. Legge til relasjonsindeksereren til et prosjekt
Relasjonsindeksereren kan aktiveres på en spesiell prosjektegenskapsside. Velg prosjektet og velg Egenskaper-elementet i hurtigmenyen. I den kommende dialogboksen velger du Relasjonsindekser-siden.
Figur 5. Prosjektegenskapsside for relasjonsindeksererenpure-systems 2024-kobling for programvare for kildekodeadministrasjon - figur 5

Relasjonsindekseren aktiveres for prosjektet ved å velge alternativet Aktiver relasjonsindekser (1). Etter å ha aktivert indeksereren er det noen flere alternativer for å definere den prosjektspesifikke oppførselen. Indekseringen av rene::varianter Conditions og C/C++ Preprocessor Constants kan aktiveres separat (2). Listen med file navnemønstre (3) brukes til å velge files for indeksering. Bare files som samsvarer med et av mønstrene, skannes. Legg til "*" som mønster for å skanne alt files av et prosjekt.
Etter aktivering av indekseren for et prosjekt legges en byggherre til prosjektet. Denne byggeren skanner endret files for nye relasjoner til pure::varianter modellerer elementer automatisk.
3.2. Forholdet til kildekoden
Med aktivert relasjonsindekserer relasjonene View inneholder flere oppføringer. Disse oppføringene viser navnet på file og linjenummeret til variantpunktet. Verktøytipset viser den aktuelle delen av file. Ved å dobbeltklikke på oppføringen file vil bli åpnet i en editor.
pure::variants Betingelser
Betingelsen pure::variants kan brukes til å inkludere eller ekskludere deler av en file avhengig av et funksjonsvalg. Tilstandsindeksereren skanner etter slike regler og trekker ut de refererte funksjonene. Hvis en slik funksjon er valgt i editoren, relasjoner View vil vise alt files og linjer der en tilstand med den valgte funksjonen er plassert (se figur 6, "Representasjon av en tilstand i relasjonene View”).
Figur 6. Representasjon av en tilstand i relasjonene Viewpure-systems 2024-kobling for programvare for kildekodeadministrasjon - figur 6For å få en detaljert forklaring på hvordan du definerer betingelser, se avsnittet ps:condtext i kapittel 9.5.7 i brukerveiledningen for pure::variants (Referanse–>Forhåndsdefinerte kildeelementtyper–>ps:condtext).
C/C++ Preprosessor-konstanter
C/C++ Preprocessor Indexer skanner files for konstanter brukt i forprosessorregler (f.eks. #ifdef, #ifndef, …).
Hvis et ps:flagg eller ps:flaggfile element er valgt Relasjoner View viser bruken av den definerte forprosessorkonstanten.
Relasjonene View viser også forprosessorkonstanter koblet til funksjoner ved å bruke kartleggingsmønstre. For dette utvides mønstrene med dataene til den valgte funksjonen. De resulterende symbolene brukes til å søke etter samsvarende preprosessorkonstanter. Figur 7, “Representasjon av en C/C++-forprosessorkonstant i relasjonene View” viser en eksample med mønsterberømmelsen{Navn}. Mønsteret er utvidet med det unike navnet på funksjonen til fameNative. I den indekserte koden er det 76 steder hvor preprosessoren konstant fameNative brukes.
Disse stedene vises i relasjoner View. Mønstrene kan defineres i preferansene (se avsnitt 3.3, "Preferansene").
Figur 7. Representasjon av en C/C++-forprosessorkonstant i relasjonene Viewpure-systems 2024-kobling for programvare for kildekodeadministrasjon - figur 7

3.3. Preferansene
For å endre standardoppførselen til indekseren, åpne Eclipse-preferansene og velg Relasjonsindekseringssiden i kategorien Variant Management. Siden viser to lister.
Figur 8. Preferanseside for relasjonsindekserpure-systems 2024-kobling for programvare for kildekodeadministrasjon - figur 8Den øverste listen inneholder standarden file mønstre for indekseren (1). Denne listen er den første mønsterinnstillingen for nylig aktiverte prosjekter.
Den nedre listen inneholder kartleggingen mellom funksjoner og forprosessorkonstanter (2). Denne kartleggingen brukes for alle prosjekter. Tabell 1, "Støttede kartleggingserstatninger" viser alle mulige erstatninger.
Tabell 1. Støttede kartleggingserstatninger

Jokertegn Beskrivelse  Example: FeatureA
Navn det unike navnet på den valgte funksjonen FLAG_{Name} – FLAG_FeatureA
NAVN den store bokstaven Unique Name for den valgte funksjonen FLAG_{NAME} – FLAG_FEATUREA
navn små bokstaver Unikt navn på den valgte funksjonen flagg_{navn} – flagg_funksjona

pure-systems logo

Dokumenter / Ressurser

pure-systems 2024-kobling for programvare for styring av kildekode [pdfBrukerhåndbok
2024, 2024 Kobling for programvare for styring av kildekode, kobling for programvare for styring av kildekoder, programvare for styring av kildekoder, styringsprogramvare, programvare

Referanser

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket *