pure :: variante – Connector vir
Bronkodebestuurhandleiding
Parametriese Tegnologie GmbH
Weergawe 6.0.7.685 vir suiwer :: variante 6.0
Kopiereg © 2003-2024 Parametric Technology GmbH
2024
Inleiding
pure::variants Connector for Source Code Management (Connector) stel ontwikkelaars in staat om bronkode-veranderlikheid te bestuur deur gebruik te maak van suiwer::variante. Die Bronkodebestuur van pure ::variante bied 'n buigsame geleentheid om gidsstrukture en bronkode te sinchroniseer files maklik met suiwer :: variante modelle. Sodoende kan variantebestuur prakties toegepas word, selfs op komplekse sagtewareprojekte. Verder kan verbindings tussen suiwer::variante-kenmerke en bronkode makliker met die bouer bestuur word en is hoogs toeganklik via die Bronkodebestuur.
1.1. Sagtewarevereistes
Die pure::variants Connector vir Bronkodebestuur is 'n uitbreiding vir pure::variante en is beskikbaar op alle ondersteunde platforms.
1.2. Installasie
Raadpleeg asseblief afdeling pure::variants Connectors in die pure::variants Setup Guide vir gedetailleerde inligting oor hoe om die connector te installeer (kieslys Help -> Help Contents en dan pure::variants Setup Guide -> pure::variants Connectors).
1.3. Oor hierdie handleiding
Daar word van die leser verwag om basiese kennis oor en ervarings met suiwer::variante te hê. Raadpleeg asseblief die inleidende materiaal voordat u hierdie handleiding lees. Die handleiding is beskikbaar in aanlynhulp sowel as in drukbare PDF-formaat hier.
Gebruik Connector
2.1. Begin suiwer::variante
Afhangende van die installasiemetode wat gebruik word, begin óf die pure::variants-geaktiveerde Eclipse of kies onder Windows die pure::variants-item in die programkieslys.
As die Variant Management-perspektief nie reeds geaktiveer is nie, doen dit deur dit te kies uit Open Perspective->Ander... in die Venster-kieslys.
2.2. Voer 'n gidsboom in 'n familiemodel in
Voordat 'n gidsboom in 'n Familiemodel ingevoer word, moet 'n variantprojek geskep word. Dit is ook suggestief om kenmerke reeds in 'n kenmerkmodel gedefinieer te hê. Raadpleeg asseblief die pure::variants-dokumentasie vir hulp oor hierdie stappe.
Die werklike invoer word begin deur die Invoer…-aksie in die kontekskieslys van die Projekte te kies view of met Invoer…-kieslys in die File spyskaart. Kies Variant Models of Projects uit kategorie Variant Management en druk Volgende. Op die volgende bladsy kies Import a Family Model from source folders en druk Next weer.
Kies tipe bronkode om in te voer
Die invoer-assistent verskyn (sien Figuur 1, "Bladsy van die invoer-assistent om die tipe bronkode te kies wat ingevoer mag word"). Kies 'n projektipe om in te voer en druk Volgende. Elke tipe bevat 'n voorafbepaalde stel van file tipes om na die model in te voer.
Figuur 1. Bladsy van die invoer-assistent om die tipe bronkode te kies wat ingevoer mag wordKies Bron en teiken
Op die volgende towenaarbladsy (Figuur 2, "Bladsy van die invoer-assistent om die bron en die teiken vir die invoer te kies") moet die brongids en die teikenmodel gespesifiseer word.
Druk die Blaai …-knoppie om die gids te kies waar die bronkode bestaan wat ingevoer moet word. By verstek word die huidige werkspasie gekies omdat dit 'n nuttige punt kan wees om te begin navigeer.
Hieronder kan u die patroon insluit en uitsluit spesifiseer. Hierdie patrone moet java-reëlmatige uitdrukkings wees. Elke invoerpad, relatief tot die bronhooflêergids, word met hierdie patroon nagegaan. As die sluitpatroon ooreenstem, word 'n vouer ingevoer, as die uitsluitpatroon nie ooreenstem nie. Dit beteken dat die insluitpatroon die vouers vooraf kies om in te voer, die uitsluitpatroon beperk hierdie voorafseleksie.
Nadat u die bronkodegids gekies het, moet 'n teikenmodel gedefinieer word. Kies dus 'n variantprojek of 'n vouer waar die model gestoor moet word en voer 'n modelnaam in. Die file naam word outomaties uitgebrei met die .ccfm-uitbreiding as dit nie in hierdie dialoog gegee word nie. By verstek sal dit op dieselfde naam gestel word as die modelnaam self. Dit is die aanbevole instelling.
Nadat 'n toepaslike bronlêergids en die gewenste modelnaam gespesifiseer is, kan die dialoog voltooi word deur Voltooi te druk. As die Volgende-knoppie gedruk word, kom 'n verdere bladsy op waar bykomende instellings gedoen kan word.
Figuur 2. Bladsy van die invoer-assistent om die bron en die teiken vir die invoer te kiesVerander invoervoorkeure
Op die laaste towenaar bladsy (Figuur 3, "Bladsy van die invoer-assistent om 'n individuele konfigurasie te definieer”) is daar voorkeure wat gedoen kan word om die invoergedrag vir die ingevoerde sagtewareprojek aan te pas.
Die dialoogbladsy wys 'n tabel waar die file tipes gedefinieer word, wat deur die invoerproses oorweeg sal word.
Elke lyn bestaan uit vier velde.
- Die Beskrywing-veld bevat 'n kort beskrywende teks om die file tipe.
- Die File naampatroonveld word gebruik om te kies files om ingevoer te word wanneer hulle ooreenstem met die veldwaarde. Die veld gebruik die volgende sintaksis:
- Die mees algemene gebruiksgeval kan 'n wees file uitbreiding. Die gewone sintaksis is .EXT, waar EXT die verlangde is file uitbreiding (bv. .java).
- Nog 'n algemene situasie is 'n spesiale file, soos 'n fabrikaatfile. Daarom is dit moontlik om presies te pas file naam. Om dit te doen, voer net die file naam in die veld (bv. build.xml).
- In sommige gevalle is die karteringbegeertes meer spesifiek, dus slegs files wat ooreenstem met 'n spesiale patroon moet ingevoer word. Om aan hierdie vereiste te voldoen, is dit moontlik om gereelde uitdrukkings in die File naampatroonveld.
Om die sintaksis van gereelde uitdrukkings te beskryf, sal die bedoeling van hierdie hulp oorskry. Raadpleeg asseblief die gereelde uitdrukkings-afdeling van die verwysingshoofstuk in die suiwer::variants gebruikersgids (bv. .*).
- Die Gekarteerde element tipe veld stel die kartering tussen a file tipe en 'n suiwer::variante familie element tipe. Die familie element tipe is 'n beskrywer vir die bron file om verdere inligting aan die gekarteerde element in die ingevoerde model te verskaf. Tipiese keuses is ps:klas of ps:maakfile.
- Die Gekarteer file tipe veld stel die kartering tussen a file tipe en 'n suiwer::variante file tipe. Die file tik in pure::variants is 'n beskrywer vir die bron file om verdere inligting aan die gekarteerde element in die ingevoerde model te verskaf. Tipiese keuses is impl vir implementering of def vir definisie files.
Figuur 3. Bladsy van die invoer-assistent om 'n individuele konfigurasie te definieerNuut file tipes kan bygevoeg word deur die Add Mapping-knoppie te gebruik. Alle velde word ingevul met die waarde ongedefinieerd en moet deur die gebruiker ingevul word. Om 'n waarde in 'n veld te wysig, klik net met die muis in die veld. Die waarde word redigeerbaar en kan verander word. Dit is nie moontlik om die verstek te verander nie file noem patrone van die tafel. Om 'n aanpassing buigsaam te maak, is dit moontlik om 'n te ontkies file tik deur die ry te ontkies. Ontkies file naampatrone bly in die opstelling, maar sal nie deur die invoerder gebruik word nie. Gebruiker gedefinieer file tipes kan weer verwyder word deur die Verwyder kartering-knoppie te gebruik.
By verstek 'n Ander files file naampatroon is beskikbaar in die tabel, maar gedekies. Tipies is dit nie wou alles invoer nie files maar dit kan maklik verander word deur die ooreenstemmende ry te kies.
Daar is drie algemene invoeropsies om die gedrag van die invoerder aan te pas.
- Moenie gidse invoer sonder om te pas nie files (bv. CVS-gidse).
As die invoerder 'n gids vind waar geen ooreenstem nie file is daarin en waar geen subgids 'n bypassende het nie file, sal die gids nie ingevoer word nie. Dit is dikwels nuttig as projekte deur weergawebestuurstelsels soos CVS bestuur word. Vir CVS bevat elke relevante gids 'n CVS-gids waar irrelevant files word gestoor. As hierdie opsie gekies is en die CVS-files stem nie ooreen met enige nie file tipe hierbo gedefinieer, sal die gids nie as 'n komponent in die Familiemodel ingevoer word nie. - Sorteer files en dopgehou.
Aktiveer hierdie opsie om te sorteer files en dopgehou elk in alfabetiese volgorde. - Voer padhantering in.
Vir verdere sinchronisasie moet die invoerder die oorspronklike pad van alle ingevoerde elemente in die model stoor.
In baie gevalle word gesinsmodelle met ander gebruikers gedeel. Die gidsstruktuur kan vir elke gebruiker verskil. Om die mees algemene gebruikscenario's te ondersteun, kan die invoerder in verskillende modusse werk:
Absoluut | Die absolute pad na die ingevoerde element sal in die model gestoor word. Vir latere sinchronisasie en tydens die transformasie die files moet op presies dieselfde plek geplaas word as tydens die eerste invoer. |
Relatief tot Werkspasie | Die paaie word gestoor relatief tot die werkspasie-lêergids. Vir sinchronisasie die files moet deel wees van die Eclipse-werkspasie. Die transformasie moet die Eclipse-werkspasie as invoergids gebruik. |
Relatief tot Projek | Die paaie word gestoor relatief tot die projek. Vir sinchronisasie die files is deel van die projek binne Eclipse. Die transformasie moet die projeklêer as invoergids gebruik. |
Relatief tot Pad | Die paaie word gestoor relatief tot die gegewe pad. Vir sinchronisasie die files moet op presies dieselfde plek geplaas word. Die transformasie-invoergids is dieselfde as die relatiewe pad tydens die invoer. |
Alle voorkeure van hierdie dialoog word aanhoudend gestoor. Die persoonlike aanpassings moet nie elke keer oorgedoen word wanneer die invoer uitgevoer word nie. Dit maak die invoerwerkvloei maklik en vinnig.
2.3. Dateer modelle op vanaf Directory Tree
Druk die Sinchroniseer-knoppie om 'n ingevoerde model met sy gidspad te sinchroniseer. Die wortelpad van die projek word in die model gestoor sodat dit met dieselfde gids as voorheen sinchroniseer. Om die Sinchroniseer-knoppie te aktiveer, maak die model oop en kies enige element. Nadat u die Sinchroniseer-knoppie gedruk het, word 'n Vergelyk-redigeerder oopgemaak waar die huidige Familiemodel en die model van die huidige gidsstruktuur teengestaan word (sien Figuur 4, "Modelopdatering vanaf Gidsboom in Vergelykredigeerder").
Figuur 4. Modelopdatering vanaf Directory Tree in Compare Editor Die vergelyk-redigeerder word regdeur suiwer::variante gebruik om modelweergawes te vergelyk, maar in hierdie geval word dit gebruik om die fisiese gidsstruktuur (vertoon in die onderste regterkant) met die huidige suiwer::variante-model (linkeronderkant) te vergelyk. Alle veranderinge word as aparte items in die boonste gedeelte van die redigeerder gelys, gerangskik volgens die geaffekteerde elemente.
Die keuse van 'n item in hierdie lys beklemtoon die onderskeie verandering in beide modelle. In die example, 'n bygevoegde element word gemerk met 'n boks aan die regterkant en verbind met sy haalbare posisie in die model aan die linkerkant. Die Merge-nutsbalk tussen boonste en onderste redigeervensters bied gereedskap om enkele of selfs alle (nie-botsende) veranderinge as 'n geheel van die gidsboommodel na die Feature Model te kopieer.
Let wel
Die sinchronisasie word gedoen met die laas gebruikte invoerderinstellings. Dit maak dit moontlik om die model op te dateer met ander instellings soos gemaak terwyl die invoer gedoen is.
Gebruik Relation Indexer
Die Connector vir Bronkodebestuur verbeter die verhoudings View met inligting oor verbande tussen suiwer::variante-modelelemente en bronkode. Verwantskappe word bygevoeg vir kenmerke wat gebruik word in toestande van die ps:condxml- en ps:condtext-elemente.
Vir ps:vlag en ps:vlagfile elemente die ligging van voorverwerkerkonstantes in C/C++ bron files word gewys. Daarbenewens word die liggings van ooreenstemmende voorverwerkerkonstantes vir 'n geselekteerde kenmerk gewys deur die kartering tussen kenmerk unieke name en voorverwerkerkonstantes te gebruik.
3.1. Voeg die verhouding-indekseerder by 'n projek
Die verhoudingsindekseerder kan op 'n spesiale projekeiendombladsy geaktiveer word. Kies die projek en kies die Eienskappe-item in die kontekskieslys. Kies die Verhoudingsindekseerder-bladsy in die komende dialoog.
Figuur 5. Projek Eiendomsbladsy vir die Verhoudingsindekseerder
Die verhouding-indekseerder word vir die projek geaktiveer deur die Aktiveer verhouding-indekseerder opsie (1) te kies. Nadat die indekseerder geaktiveer is, is daar nog 'n paar opsies om die projekspesifieke gedrag te definieer. Die indeksering van suiwer::variante Voorwaardes en C/C++ Voorverwerker-konstante kan afsonderlik geaktiveer word (2). Die lys met file naampatrone (3) word gebruik om die te kies files vir indeksering. Slegs files wat by een van die patrone pas, word geskandeer. Voeg die "*" as patroon by om alles te skandeer files van 'n projek.
Nadat die indekseerder vir 'n projek geaktiveer is, word 'n bouer by die projek gevoeg. Hierdie bouerskanderings het verander files vir nuwe verhoudings tot suiwer::variante model elemente outomaties.
3.2. Die verbande met die bronkode
Met geaktiveerde verhoudingsindekseerder die Verhoudings View bevat bykomende inskrywings. Hierdie inskrywings toon die naam van die file en die lynnommer van die variantpunt. Die gereedskapwenk wys die toepaslike afdeling van die file. Deur te dubbelklik op die inskrywing die file sal in 'n redigeerder oopgemaak word.
pure :: variante Voorwaardes
Die suiwer::variante toestand kan gebruik word om gedeeltes van 'n in of uit te sluit file afhangende van 'n kenmerkkeuse. Die Condition Indexer skandeer vir sulke reëls en onttrek die verwysde kenmerke. As so 'n kenmerk in die redigeerder gekies word, sal die Relations View sal alles wys files en lyne waar 'n toestand met die geselekteerde kenmerk geleë is (sien Figuur 6, "Voorstelling van 'n toestand in die verhoudings View”).
Figuur 6. Voorstelling van 'n toestand in die verhoudings ViewOm 'n gedetailleerde verduideliking te kry oor hoe om voorwaardes te definieer, raadpleeg die afdeling ps:condtext van hoofstuk 9.5.7 van die suiwer ::variants Gebruikersgids (Verwysing–>Vooraf gedefinieerde bronelementtipes–>ps:condtext).
C/C++ Voorverwerker konstante
Die C/C++ Preprocessor Indexer skandeer files vir konstantes wat in voorverwerkerreëls gebruik word (bv. #ifdef, #ifndef, …).
As 'n ps:vlag of ps:vlagfile element is gekies die Verhoudings View toon die gebruik van die gedefinieerde voorverwerkerkonstante.
Die Verhoudings View toon ook voorverwerkerkonstantes wat aan kenmerke gekoppel is deur karteringpatrone te gebruik. Hiervoor word die patrone uitgebrei met die data van die geselekteerde kenmerk. Die gevolglike simbole word gebruik om te soek vir ooreenstemmende voorverwerkerkonstantes. Figuur 7, “Voorstelling van 'n C/C++-voorverwerker-konstante in die verhoudings View” wys ’n eksample met die patroonfaam {Naam}. Die patroon word uitgebrei met die unieke naam van die kenmerk na fameNative. In die geïndekseerde kode is daar 76 plekke waar die voorverwerker konstante fameNative gebruik word.
Hierdie liggings word in die Verhoudings getoon View. Die patrone kan in die voorkeure gedefinieer word (sien Afdeling 3.3, “Die Voorkeure”).
Figuur 7. Voorstelling van 'n C/C++-voorverwerker-konstante in die verhoudings View
3.3. Die Voorkeure
Om die verstekgedrag van die indekseerder te verander, maak die Eclipse-voorkeure oop en kies die Verwantskap-indekseerder-bladsy in die Variant Management-kategorie. Die bladsy wys twee lyste.
Figuur 8. Verwantskap-indekseerder-voorkeurbladsyDie boonste lys bevat die verstek file patrone vir die indekseerder (1). Hierdie lys is die aanvanklike patrooninstelling vir nuutgeaktiveerde projekte.
Die onderste lys bevat die kartering tussen kenmerke en voorverwerkerkonstantes (2). Hierdie kartering word vir alle projekte gebruik. Tabel 1, "Ondersteunde karteringvervangings" toon alle moontlike vervangings.
Tabel 1. Ondersteunde karteringvervangings
Wildcard | Beskrywing | Example: Kenmerk A |
Naam | die unieke naam van die geselekteerde kenmerk | FLAG_{Naam} – FLAG_FeatureA |
NAAM | die hoofletter Unieke naam van die geselekteerde kenmerk | FLAG_{NAME} – FLAG_FEATUREA |
naam | die kleinletter Unieke naam van die geselekteerde kenmerk | vlag_{naam} – vlag_kenmerka |
Dokumente / Hulpbronne
![]() |
pure-systems 2024 Connector vir bronkodebestuursagteware [pdfGebruikershandleiding 2024, 2024 Connector vir Bronkodebestuursagteware, Connector vir Bronkodebestuursagteware, Bronkodebestuursagteware, Bestuursagteware, Sagteware |