pure::variants – Konektor za
Priručnik za upravljanje izvornim kodom
Parametric Technology GmbH
Verzija 6.0.7.685 za pure::variants 6.0
Autorska prava © 2003-2024 Parametric Technology GmbH
2024
Uvod
pure::variants Connector za upravljanje izvornim kodom (Connector) omogućuje programerima upravljanje varijabilnošću izvornog koda pomoću pure::variants. Upravljanje izvornim kodom pure::variants pruža fleksibilnu priliku za sinkronizaciju struktura direktorija i izvornog koda filelako s modelima pure::variants. Stoga se upravljanje varijantama može primijeniti čak i na složene softverske projekte. Nadalje, vezama između značajki pure::varijanti i izvornog koda može se lakše upravljati s programom za izgradnju i vrlo su dostupni putem upravljanja izvornim kodom.
1.1. Softverski zahtjevi
Pure::variants Connector za upravljanje izvornim kodom proširenje je za pure::variants i dostupno je na svim podržanim platformama.
1.2. Instalacija
Pogledajte odjeljak pure::variants Konektori u vodiču za postavljanje pure::variants za detaljne informacije o tome kako instalirati konektor (izbornik Pomoć -> Sadržaj pomoći, a zatim pure::variants Vodič za postavljanje -> pure::variants Konektori).
1.3. O ovom priručniku
Od čitatelja se očekuje osnovno znanje i iskustvo s pure::varijantama. Prije čitanja ovog priručnika pogledajte uvodni materijal. Priručnik je dostupan u online pomoći kao iu PDF formatu za ispis ovdje.
Korištenje konektora
2.1. Počevši od čistih::varijanti
Ovisno o korištenoj instalacijskoj metodi ili pokrenite Eclipse s omogućenom pure::variants ili u sustavu Windows odaberite stavku pure::variants iz izbornika programa.
Ako perspektiva upravljanja varijantama nije već aktivirana, učinite to odabirom iz Otvori perspektive->Ostalo… u izborniku Prozor.
2.2. Uvezite stablo imenika u obiteljski model
Prije uvoza stabla imenika u obiteljski model, mora se izraditi projekt varijanti. Također je sugestivno imati značajke već definirane u Feature Modelu. Za pomoć u vezi s ovim koracima pogledajte dokumentaciju pure::variants.
Stvarni uvoz se pokreće odabirom radnje Uvezi… ili u kontekstnom izborniku Projekta view ili pomoću izbornika Uvoz… u File Jelovnik. Odaberite Variant Models ili Projects iz kategorije Variant Management i pritisnite Next. Na sljedećoj stranici odaberite Uvezi obiteljski model iz izvornih mapa i ponovno pritisnite Dalje.
Odaberite vrstu izvornog koda za uvoz
Pojavljuje se čarobnjak za uvoz (pogledajte sliku 1, “Stranica čarobnjaka za uvoz za odabir vrste izvornog koda koji se može uvesti”). Odaberite vrstu projekta za uvoz i pritisnite Dalje. Svaki tip sadrži unaprijed definirani skup file vrste za uvoz u model.
Slika 1. Stranica čarobnjaka za uvoz za odabir vrste izvornog koda koji se može uvestiOdaberite Izvor i Cilj
Na sljedećoj stranici čarobnjaka (Slika 2, “Stranica čarobnjaka za uvoz za odabir izvora i cilja za uvoz”) izvorni direktorij i ciljni model moraju biti navedeni.
Pritisnite gumb Browse… za odabir direktorija u kojem postoji izvorni kod koji treba uvesti. Prema zadanim postavkama odabran je trenutni radni prostor jer bi to moglo biti korisno za početak navigacije.
U nastavku možete odrediti uzorak uključivanja i isključivanja. Ovi uzorci moraju biti java regularni izrazi. Svaki put unosa, u odnosu na izvornu korijensku mapu, provjerava se ovim uzorkom. Ako se uzorak uključivanja podudara, mapa se uvozi, ako uzorak isključivanja ne odgovara. Što znači da uzorak za uključivanje unaprijed odabire mape za uvoz, uzorak za isključivanje ograničava ovaj predodabir.
Nakon odabira direktorija izvornog koda mora se definirati ciljni model. Stoga odaberite varijantu projekta ili mapu u koju bi model trebao biti pohranjen i unesite naziv modela. The file naziv se automatski proširuje ekstenzijom .ccfm ako nije navedena u ovom dijaloškom okviru. Prema zadanim postavkama bit će postavljen na isti naziv kao i sam naziv modela. Ovo je preporučena postavka.
Nakon što se odredi odgovarajuća izvorna mapa i naziv željenog modela, dijaloški okvir možete završiti pritiskom na Završi. Ako se pritisne gumb Dalje, otvara se sljedeća stranica na kojoj se mogu napraviti dodatne postavke.
Slika 2. Stranica čarobnjaka za uvoz za odabir izvora i cilja za uvozPromijenite postavke uvoza
Na zadnjoj stranici čarobnjaka (Slika 3, “Stranica čarobnjaka za uvoz za definiranje pojedinačne konfiguracije”) postoje postavke koje se mogu učiniti za prilagodbu ponašanja uvoza za uvezeni softverski projekt.
Dijaloška stranica prikazuje tablicu u kojoj se file definirani su tipovi koji će se uzeti u obzir u procesu uvoza.
Svaki red se sastoji od četiri polja.
- Polje Opis sadrži kratki opisni tekst za prepoznavanje file tip.
- The File polje uzorka imena koristi se za odabir filekoje treba uvesti kada odgovaraju vrijednosti polja. Polje koristi sljedeću sintaksu:
- Najčešća upotreba može biti a file proširenje. Uobičajena sintaksa je .EXT, gdje je EXT željeno file proširenje (npr. .java).
- Još jedna uobičajena situacija je posebna file, kao maketafile. Stoga je moguće točno podudaranje file ime. Da biste to učinili, samo unesite file ime u polje (npr. build.xml).
- U nekim slučajevima želje za mapiranjem su specifičnije, pa samo filekoje odgovaraju posebnom uzorku treba uvesti. Kako bi se zadovoljio ovaj zahtjev, moguće je koristiti regularne izraze u File polje uzorka imena.
Opisivanje sintakse regularnih izraza premašilo bi namjeru ove pomoći. Molimo konzultirajte odjeljak o regularnim izrazima referentnog poglavlja u pure::variants korisničkom vodiču (npr. .*).
- Polje Mapped element type postavlja preslikavanje između a file tip i tip elementa obitelji pure::variants. Tip obiteljskog elementa je deskriptor za izvor file za pružanje dodatnih informacija mapiranom elementu u uvezenom modelu. Tipični odabiri su ps:class ili ps:makefile.
- Mapirani file polje vrste postavlja preslikavanje između a file tipa i čiste::varijante file tip. The file type in pure::variants je deskriptor za izvor file za pružanje dodatnih informacija mapiranom elementu u uvezenom modelu. Tipični odabiri su impl za implementacije ili def za definiciju files.
Slika 3. Stranica čarobnjaka za uvoz za definiranje pojedinačne konfiguracijeNovi file tipovi se mogu dodati pomoću gumba Dodaj mapiranje. Sva polja su popunjena s vrijednošću nedefinirano i korisnik ih mora ispuniti. Da biste uredili vrijednost u polju, samo kliknite na polje mišem. Vrijednost se može uređivati i mijenjati. Nije moguće promijeniti zadane postavke file ime uzorci tablice. Kako bi prilagodba bila fleksibilna, moguće je poništiti odabir a file upišite poništavanjem odabira reda. Poništen odabir file obrasci naziva ostaju u konfiguraciji, ali ih uvoznik neće koristiti. Korisnički definirano file tipovi se mogu ponovno ukloniti pomoću gumba Ukloni mapiranje.
Prema zadanim postavkama Drugo files file uzorak naziva dostupan je u tablici, ali nije odabran. Obično se ne želi uvesti sve fileali to se može lako promijeniti odabirom odgovarajućeg retka.
Postoje tri opće opcije uvoza za prilagodbu ponašanja uvoznika.
- Nemojte uvoziti direktorije bez podudaranja files (npr. CVS imenici).
Ako uvoznik pronađe imenik u kojem nema podudaranja file je u njemu i gdje nijedan poddirektorij nema podudaranje file, imenik neće biti uvezen. Ovo je često korisno ako projektima upravljaju sustavi za upravljanje verzijama poput CVS-a. Za CVS, svaki relevantni direktorij sadrži CVS-direktorij gdje nije relevantan files su pohranjeni. Ako je ova opcija odabrana i CVS-files ne podudaraju se ni s jednim file tipa definiranog gore, imenik se neće uvesti kao komponenta u obiteljski model. - Vrsta files i imenike.
Omogućite ovu opciju za sortiranje files i direktorije svaki abecednim redom. - Rukovanje stazom uvoza.
Za daljnju sinkronizaciju uvoznik mora pohraniti izvornu putanju svih uvezenih elemenata u model.
U mnogim slučajevima obiteljski modeli dijele se s drugim korisnicima. Struktura imenika može biti drugačija za svakog korisnika. Kako bi podržao najčešće scenarije upotrebe, uvoznik može raditi u različitim načinima rada:
Apsolutno | Apsolutni put do uvezenog elementa bit će pohranjen u modelu. Za kasniju sinkronizaciju i tijekom transformacije filemoraju se postaviti na potpuno isto mjesto kao i tijekom prvog uvoza. |
U odnosu na radni prostor | Staze su pohranjene u odnosu na mapu radnog prostora. Za sinkronizaciju files mora biti dio radnog prostora Eclipse. Transformacija mora koristiti radni prostor Eclipse kao ulazni direktorij. |
U odnosu na Projekt | Staze su pohranjene u odnosu na projekt. Za sinkronizaciju filedio su projekta unutar Eclipse. Transformacija mora koristiti mapu projekta kao ulazni direktorij. |
U odnosu na Put | Staze su pohranjene u odnosu na zadanu stazu. Za sinkronizaciju filemoraju biti postavljeni na potpuno isto mjesto. Ulazni direktorij transformacije isti je kao relativna staza tijekom uvoza. |
Sve postavke ovog dijaloškog okvira trajno su pohranjene. Osobne prilagodbe ne smiju se ponovno raditi svaki put kada se pokrene uvoz. To tijek uvoza čini lakim i brzim.
2.3. Ažuriranje modela iz stabla imenika
Pritisnite tipku Sinkroniziraj za sinkronizaciju uvezenog modela s njegovom stazom direktorija. Korijenska staza projekta pohranjena je u modelu tako da će se sinkronizirati u isti direktorij kao i prije. Da biste omogućili gumb Sinkroniziraj, otvorite model i odaberite bilo koji element. Nakon pritiska na gumb Sinkroniziraj otvara se uređivač usporedbe u kojem se suprotstavljaju trenutni model obitelji i model trenutne strukture direktorija (pogledajte sliku 4, “Ažuriranje modela iz stabla direktorija u uređivaču usporedbe”).
Slika 4. Ažuriranje modela iz stabla direktorija u uređivaču usporedbe Uređivač usporedbe koristi se u čitavom pure::varijantama za usporedbu verzija modela, ali u ovom slučaju se koristi za usporedbu fizičke strukture direktorija (prikazane u donjem desnom dijelu) s trenutnim modelom pure::variants (donja lijeva strana). Sve promjene navedene su kao zasebne stavke u gornjem dijelu uređivača, poredane po elementima na koje se to odnosi.
Odabirom stavke na ovom popisu ističe se odgovarajuća promjena u oba modela. U example, dodani element je označen okvirom na desnoj strani i povezan sa svojom mogućom pozicijom u modelu na lijevoj strani. Alatna traka spajanja između gornjeg i donjeg prozora uređivača pruža alate za kopiranje pojedinačnih ili čak svih (nesukobnih) promjena u cjelini iz modela stabla direktorija u model značajki.
Bilješka
Sinkronizacija se vrši sa zadnjim korištenim postavkama uvoznika. To omogućuje ažuriranje modela s drugim postavkama koje su napravljene tijekom uvoza.
Korištenje Indeksatora odnosa
Konektor za upravljanje izvornim kodom poboljšava odnose View s informacijama o vezama između elemenata modela pure::variants i izvornog koda. Relacije se dodaju za značajke koje se koriste u uvjetima elemenata ps:condxml i ps:condtext.
Za ps:flag i ps:flagfile elementi mjesto pretprocesorskih konstanti u C/C++ izvoru files su prikazani. Osim toga, lokacije odgovarajućih pretprocesorskih konstanti prikazane su za odabranu značajku pomoću preslikavanja između jedinstvenih imena značajki i pretprocesorskih konstanti.
3.1. Dodavanje relacijskog indeksatora u projekt
Indeksator odnosa može se aktivirati na posebnoj stranici svojstava projekta. Odaberite projekt i u kontekstnom izborniku odaberite stavku Svojstva. U nadolazećem dijaloškom okviru odaberite stranicu Relation Indexer.
Slika 5. Stranica svojstava projekta za Indeksator odnosa
Indeksator relacija aktivira se za projekt odabirom opcije Enable Relation Indexer (1). Nakon što omogućite indeksator, postoje još neke opcije za definiranje specifičnog ponašanja projekta. Indeksiranje pure::variants uvjeta i C/C++ pretprocesorskih konstanti može se aktivirati odvojeno (2). Popis sa file uzorci imena (3) koriste se za odabir files za indeksiranje. Samo filekoji odgovaraju jednom od uzoraka se skeniraju. Dodajte “*” kao uzorak za skeniranje svih files projekta.
Nakon aktiviranja indeksatora za projekt projektu se dodaje builder. Skeniranje ovog graditelja je promijenjeno files za nove odnose prema elementima modela pure::variants automatski.
3.2. Odnosi prema izvornom kodu
S aktiviranim indeksatorom odnosa Relations View sadrži dodatne unose. Ovi unosi pokazuju naziv file i broj linije varijantne točke. Savjet alata prikazuje odgovarajući odjeljak file. Dvostrukim pritiskom na unos file otvorit će se u uređivaču.
pure::variants Uvjeti
Uvjet pure::variants može se koristiti za uključivanje ili isključivanje dijelova a file ovisno o odabiru značajke. Condition Indexer traži takva pravila i izdvaja navedene značajke. Ako je takva značajka odabrana u uređivaču Relations View pokazat će sve files i linije gdje se nalazi uvjet s odabranom značajkom (pogledajte sliku 6, “Prikaz uvjeta u relacijama View”).
Slika 6. Prikaz stanja u relacijama ViewDa biste dobili detaljno objašnjenje o tome kako definirati uvjete, pogledajte odjeljak ps:condtext u poglavlju 9.5.7 pure::variants Korisničkog vodiča (Referenca–>Unaprijed definirani izvorni tipovi elemenata–>ps:condtext).
C/C++ pretprocesorske konstante
Indeksator pretprocesora C/C++ skenira files za konstante koje se koriste u pravilima pretprocesora (npr. #ifdef, #ifndef, …).
Ako je ps:flag ili ps:flagfile odabran je element Relations View prikazuje korištenje definirane konstante pretprocesora.
Odnosi View također prikazuje konstante pretprocesora povezane sa značajkama korištenjem uzoraka mapiranja. Za to se obrasci proširuju podacima odabranog obilježja. Rezultirajući simboli koriste se za traženje odgovarajućih pretprocesorskih konstanti. Slika 7, “Prikaz C/C++ pretprocesorske konstante u relacijama View” pokazuje bivšiample s uzorkom fame{Name}. Uzorak je proširen s jedinstvenim nazivom značajke na fameNative. U indeksiranom kodu postoji 76 mjesta gdje se koristi pretprocesorska konstanta fameNative.
Ove lokacije prikazane su u Relacijama View. Uzorci se mogu definirati u postavkama (pogledajte odjeljak 3.3, “Postavke”).
Slika 7. Predstavljanje C/C++ pretprocesorske konstante u relacijama View
3.3. Postavke
Za promjenu zadanog ponašanja indeksatora otvorite postavke Eclipse i odaberite stranicu Relation Indexer u kategoriji Variant Management. Stranica prikazuje dva popisa.
Slika 8. Stranica preferencija Indeksatora odnosaGornji popis sadrži zadane file uzorci za indeksator (1). Ovaj popis početna je postavka uzorka za novo omogućene projekte.
Donji popis sadrži mapiranje između značajki i pretprocesorskih konstanti (2). Ovo se mapiranje koristi za sve projekte. Tablica 1, “Podržane zamjene mapiranja” prikazuje sve moguće zamjene.
Tablica 1. Podržane zamjene mapiranja
Zamjenski znak | Opis | Example: ZnačajkaA |
Ime | jedinstveni naziv odabrane značajke | OZNAKA_{Naziv} – OZNAKA_ZnačajkaA |
IME | velikim slovima Jedinstveni naziv odabrane značajke | FLAG_{NAME} – FLAG_FEATUREA |
ime | malim slovima Jedinstveni naziv odabrane značajke | zastava_{ime} – značajka_zastave |
Dokumenti / Resursi
![]() |
pure-systems 2024 konektor za softver za upravljanje izvornim kodom [pdf] Korisnički priručnik 2024, 2024 priključak za softver za upravljanje izvornim kodom, priključak za softver za upravljanje izvornim kodom, softver za upravljanje izvornim kodom, softver za upravljanje, softver |