Dijeli putem


Kontrola izvora pomoću datoteka rješenja

Alat Solution Packager može se koristiti s bilo kojim sustavom za kontrolu izvornog koda. Nakon što se rješenje .zip datoteka izdvoji u mapu, dodajte i pošaljite datoteke u sustav za kontrolu izvornog koda. Te se datoteke mogu zatim sinkronizirati na drugom računalu gdje se mogu spakirati u novu identičnu .zip datoteku rješenja.

Važan aspekt pri korištenju izdvojenih komponentnih datoteka u kontroli izvornog koda je da dodavanje svih datoteka u kontrolu izvornog koda može uzrokovati nepotrebno dupliciranje. Idite na referencu datoteke komponente rješenja da biste otkrili koje se datoteke generiraju za svaku vrstu komponente, a koje se preporučuju za korištenje u kontroli izvora.

Kako su daljnja prilagođavanja i promjene potrebni za rješenje, razvojni inženjeri bi trebali urediti ili prilagoditi komponente postojećim sredstvima, ponovo izvesti kako bi stvorili .zip datoteku i izdvojiti komprimiranu datoteku rješenja u istu mapu.

Važno

Osim odjeljaka opisanih u odjeljku Kada urediti datoteku prilagodbi, ručno uređivanje izdvojenih komponentnih datoteka i .zip datoteka nije podržano.

Kada alat za pakiranje rješenja izdvoji datoteke komponenti, ne prebriše postojeće komponente istog naziva ako je sadržaj datoteke identičan. Osim toga, alat poštuje atribut samo za čitanje na komponentnim datotekama stvarajući upozorenje u prozoru konzole da određene datoteke nisu napisane. Ova zaštita omogućuje korisniku da iz kontrole izvornog koda odjavi minimalni skup datoteka koje se mijenjaju. Parametar /clobber se može koristiti za nadjačavanje i uzrokovati pisanje ili brisanje datoteka samo za čitanje. Parametar /allowWrite se može koristiti za procjenu utjecaja koji ima operacija izdvajanja bez da to dovede do stvarnog pisanja ili brisanja bilo koje datoteke. Učinkovita je upotreba parametra /allowWrite s opširnim zapisivanjem.

Nakon što je operacija izdvajanja dovršena s minimalnim skupom datoteka odjavljenih iz kontrole izvornog koda, razvojni inženjer može poslati promijenjene datoteke natrag u kontrolu izvora, kao što je to učinjeno s bilo kojom drugom vrstom izvorne datoteke.

Razvoj tima

Kada više razvojnih inženjera radi na istoj komponenti rješenja, može doći do sukoba u kojem promjene dvaju razvojnih inženjera rezultiraju promjenama u jednoj datoteci. Ova pojava se minimizira razlaganjem svake komponente ili podkomponente koja se može pojedinačno urediti u zasebnu datoteku. Razmotrite sljedeći primjer.

  1. I razvojni inženjer A i razvojni inženjer B rade na istom rješenju.

  2. Na zasebnim računalima oba dobivaju najnovije izvore rješenja iz kontrole izvora, pakiraju i uvoze .zip datoteku neupravljanog rješenja u zasebne organizacije servisa Microsoft Dataverse.

  3. Razvojni inženjer A prilagođava sistemski prikaz "Aktivni kontakti" i glavni obrazac za entitet Kontakt.

  4. Razvojni programer B prilagođava glavni obrazac za entitet Račun i mijenja "Prikaz pretraživanja kontakta".

  5. Oba razvojna inženjera izvoze .zip datoteku neupravljanog rješenja i izdvajaju.

    1. Razvojni inženjer A će trebati provjeriti jednu datoteku za glavni obrazac Kontakt i jednu datoteku za prikaz "Aktivni kontakti".

    2. Razvojni programer B morat će odjaviti jednu datoteku za glavni obrazac računa i jednu datoteku za "Prikaz pretraživanja kontakata".

  6. Oba programera mogu se prijaviti, bilo kojim redoslijedom, jer su njihove promjene dotakle zasebne datoteke.

  7. Nakon što se dovrše oba slanja, oni mogu ponoviti korak br. 2 i zatim nastaviti s izvršavanjem daljnjih promjena u svojim zasebnim organizacijama. Svaki od njih ima oba skupa promjena, bez prebrisivanja vlastitog rada.

Prethodni primjer funkcionira samo kad postoje promjene u zasebnim datotekama. Neizbježno je da neovisne prilagodbe zahtijevaju promjene unutar jedne datoteke. Na temelju prethodno prikazanog primjera uzmite u obzir da je razvojni programer B prilagodio prikaz "Aktivni kontakti", dok ga je razvojni inženjer A također prilagođavao. U ovom novom primjeru redoslijed događaja postaje važan. Ispravan postupak za pomirenje ove nevolje, napisan u cijelosti, opisan je ovdje.

  1. I razvojni inženjer A i razvojni inženjer B rade na istom rješenju.

  2. Na zasebnim računalima oba dobivaju najnovije izvore rješenja iz kontrole izvora, pakiraju i uvoze .zip datoteku neupravljanog rješenja u zasebne organizacije.

  3. Razvojni programer A prilagođava prikaz sustava "Aktivni kontakti" i glavni obrazac za tablicu kontakata.

  4. Razvojni programer B prilagođava glavni obrazac za tablicu Račun i mijenja "Aktivni kontakti".

  5. Oba razvojna inženjera izvoze .zip datoteku neupravljanog rješenja i izdvajaju.

    1. Razvojni inženjer A će trebati provjeriti jednu datoteku za glavni obrazac Kontakt i jednu datoteku za prikaz "Aktivni kontakti".

    2. Razvojni inženjer B će trebati provjeriti jednu datoteku za glavni obrazac Račun i jednu datoteku za prikaz "Aktivni kontakti".

  6. Razvojni inženjer A prvi je spreman.

    1. Prije nego što se programer A podvrgne kontroli izvora, mora dobiti najnovije izvore kako bi osigurao da nema prethodnih provjera u sukobu s njihovim promjenama.

    2. Nema sukoba pa se programer A može prijaviti.

  7. Razvojni inženjer B je spreman sljedeći nakon razvojnog inženjera A.

    1. Prije nego što programer B pošalje, mora dobiti najnovije izvore kako bi osigurao da prethodne prijave nisu u sukobu s njihovim promjenama.

    2. Postoji sukob jer je datoteka za "Aktivne kontakte" izmijenjena otkako je programer B posljednji put dohvatio najnovije izvore.

    3. Razvojni inženjer B mora riješiti sukob. Moguće je da mogućnosti sustava kontrole izvornog koda koji se koristi mogu pomoći ovom procesu; inače su svi sljedeći izbori održivi.

      1. Razvojni programer B, putem povijesti kontrole izvornog koda, ako je dostupna, može primijetiti da je razvojni programer A napravio prethodnu promjenu. Izravnom komunikacijom mogu razgovarati o svakoj promjeni. Tada programer B mora samo ažurirati organizaciju dogovorenom rezolucijom. Razvojni inženjer B zatim izvozi, izdvaja i prepisuje konfliktnu datoteku i šalje.

      2. Dopustite kontroli izvornog koda da prebriše lokalnu datoteku. Razvojni inženjer B pakira rješenje i uvozi ga u svoju tvrtku ili ustanovu, a zatim procjenjuje stanje prikaza i prema potrebi ga ponovno prilagođava. Zatim razvojni programer B može izvesti, izdvojiti i prebrisati konfliktnu datoteku.

      3. Ako se prethodna promjena smatra nepotrebnom, razvojni inženjer B dopušta svojoj kopiji datoteke da prebriše verziju u kontroli izvornog koda i šalje.

Bilo da rade u zajedničkom okruženju ili neovisnom okruženju, timski Dataverse razvoj rješenja zahtijeva od onih koji aktivno rade na zajedničkom rješenju da budu svjesni rada drugih. Alat Solution Packager ne uklanja u potpunosti ovu potrebu, ali omogućuje jednostavno spajanje nekonfliktnih promjena na razini kontrole izvornog koda i proaktivno ističe sažete komponente u kojima nastaju sukobi.

Sljedeći odjeljci su generički procesi za učinkovito korištenje alata Solution Packager u kontroli izvornog koda prilikom razvoja s timovima. Oni rade jednako s neovisnim okruženjima ili zajedničkim razvojnim okruženjima, iako sa zajedničkim okruženjima izvoz i izdvajanje prirodno uključuje sve promjene prisutne unutar rješenja, a ne samo one koje je napravio programer koji izvodi izvoz. Slično tome, prilikom uvoza rješenja .zip datoteku dolazi do prirodnog ponašanja za prebrisivanje svih komponenti.

Izrada rješenja

Ovaj postupak identificira tipične korake koji se koriste prilikom prvog stvaranja rješenja.

  1. U čistom okruženju stvorite Dataverse rješenje, a zatim dodajte ili stvorite komponente prema potrebi.

  2. Kada budete spremni za prijavu, slijedite ove korake.

    1. Izvezite neupravljano rješenje.

    2. Pomoću alata Solution Packager izdvojite rješenje u sastavne datoteke.

    3. Iz tih izdvojenih datoteka komponenti dodajte potrebne datoteke kontroli izvora.

    4. Pošaljite ove izmjene kontroli izvora.

Izmjena rješenja

Sljedeći postupak identificira tipične korake koji se koriste prilikom izmjene postojećeg rješenja.

  1. Sinkronizirajte ili nabavite najnovije izvore datoteka komponenti rješenja.

  2. Pomoću alata za pakiranje rješenja spakirajte datoteke komponenti u neupravljanu datoteku rješenja .zip.

  3. Uvezite datoteku neupravljanog rješenja u okruženje.

  4. Prilagodite i uredite rješenje po potrebi.

  5. Kada budete spremni provjeriti promjene u kontroli izvora, slijedite ove korake.

    1. Izvezite neupravljano rješenje.

    2. Pomoću alata Solution Packager izdvojite izvezeno rješenje u sastavne datoteke.

    3. Sinkronizirajte ili nabavite najnovije izvore iz kontrole izvora.

    4. Riješite sve sukobe ako ih ima.

    5. Pošaljite izmjene kontroli izvora.

    Koraci 2 i 3 moraju se napraviti prije nego što se u razvojnoj organizaciji pojave daljnja prilagođavanja. Unutar koraka 5, korak b mora biti završen prije koraka c.

Pogledajte također

Referenca datoteke komponente rješenja (SolutionPackager)
Alat SolutionPackager