Cvičení – nasdílení změny prostřednictvím kanálu
V této lekci si procvičíte kompletní pracovní postup kódu tím, že nasdílíte malou změnu na web Space Game na GitHub.
Mara dostala úkol změnit nějaký text na domovské stránce webu Index.cshtml. V této lekci budete pokračovat.
Pojďme se krátce podívat na postup dokončení úkolu:
- Synchronizujte místní úložiště s nejnovější větví
mainna GitHubu. - Vytvořte větev pro uložení změn.
- Proveďte potřebné změny kódu a ověřte je místně.
- Nasdílejte větev do GitHubu.
- Sloučte všechny nedávné změny z větve
mainna GitHubu do místní pracovní větve a ověřte, že vaše změny stále fungují. - Nahrajte všechny zbývající změny, sledujte sestavení aplikace pomocí Azure Pipelines a odešlete váš pull request.
Načtení nejnovější hlavní větve
V předchozí lekci jste vytvořili žádost o přijetí změn a sloučili jste větev code-workflow do větve na GitHubu main . Teď potřebujete přijmout změny z větve main zpět do své místní větve.
Příkaz git pull načte nejnovější kód ze vzdáleného úložiště a sloučí ho do vašeho místního úložiště. Díky tomu víte, že pracujete s nejnovějším základem kódu.
V terminálu spusťte
git checkout mainpřepnutí domainvětve:git checkout mainPokud chcete stáhnout nejnovější změny, spusťte tento
git pullpříkaz:git pull origin mainMůžete zobrazit seznam změněných souborů. Jako volitelný krok můžete otevřít soubor azure-pipelines.yml a ověřit, že obsahuje úplnou konfiguraci sestavení.
Vzpomeňte si, že úložiště Git, ve kterém členové týmu spolupracují (například na GitHubu), se nazývá vzdálené. Tady origin určuje vaše úložiště na GitHubu.
Později načtete počáteční kód z úložiště Microsoft GitHub, označovaného jako upstream.
Sestavení a spuštění webové aplikace
Abyste měli jistotu, že máte funkční kopii pro spuštění změn, sestavte a spusťte webovou aplikaci místně.
V editoru Visual Studio Code přejděte do okna terminálu a spuštěním následujícího
dotnet buildpříkazu sestavte aplikaci:dotnet build --configuration ReleaseSpuštěním následujícího
dotnet runpříkazu spusťte aplikaci:dotnet run --configuration Release --no-build --project Tailspin.SpaceGame.WebNávod
Pokud se v prohlížeči zobrazí chyba související s ochranou osobních údajů nebo chybou certifikátu, pomocí kombinace kláves Ctrl+C v terminálu zastavte spuštěnou aplikaci.
Po zobrazení výzvy spusťte
dotnet dev-certs https --trusta vyberte Ano nebo další informace najdete v tomto blogovém příspěvku .Jakmile počítač důvěřuje vašemu místnímu certifikátu SSL, spusťte
dotnet runpříkaz podruhé a přejděte nahttp://localhost:5000novou kartu prohlížeče, abyste viděli spuštěnou aplikaci.
Ověřte, že je aplikace spuštěná.
Ve vývojovém režimu je web Space Game nakonfigurovaný tak, aby běžel na portu 5000.
Na nové kartě prohlížeče přejděte k http://localhost:5000 zobrazení spuštěné aplikace.
Měli byste vidět toto:
Na stránce můžete vyzkoušet prvky, včetně tabulky výsledků. Když vyberete jméno hráče, zobrazí se podrobnosti o tomto hráči.
Až budete hotovi, vraťte se do okna terminálu a stisknutím ctrl+C zastavte spuštěnou aplikaci.
Vytvoření větve pro funkci
V této části vytvoříte větev Gitu, abyste mohli pracovat se soubory, aniž by to ovlivnilo ostatní uživatele. Ostatní dokonce ani nebudou vědět, že na těchto souborech pracujete, dokud jejich změny nenasdílíte do vzdáleného úložiště.
Pokud chcete vytvořit větev, použijte git checkout příkaz a pojmenujte větev stejně jako v předchozí části.
Při vytváření větve je vhodné dodržovat zásady vytváření názvů. Pokud je například větev určená pro práci na nové funkci, můžete použít formát feature/<branch-name>. Pro opravu chyby můžete použít formát bugfix/<bug-number>. V tomto příkladu bude feature/home-page-textnázev vaší větve .
V terminálu spusťte následující git checkout příkaz:
git checkout -B feature/home-page-text
Stejně jako předtím feature/home-page-text je založená na main větvi.
Provedení změn a jejich místní otestování
V editoru Visual Studio Code otevřete index.cshtml v adresáři Tailspin.SpaceGame.Web/Views/Home .
Vyhledejte tento text v horní části stránky:
<p>An example site for learning</p>Návod
Visual Studio Code také nabízí snadný způsob, jak hledat text v souborech. Pokud chcete získat přístup k podoknu hledání, vyberte ikonu lupy v bočním podokně.
Nahraďte text v předchozím kroku následujícím textem s chybným typem a pak soubor uložte:
<p>Welcome to the oficial Space Game site!</p>Všimněte si, že slovo "oficial" je záměrně nesprávně napsané. Tuto chybu vyřešíme později v tomto modulu.
Spuštěním následujícího
dotnet buildpříkazu v terminálu sestavte aplikaci:dotnet build --configuration ReleaseSpuštěním následujícího
dotnet runpříkazu spusťte aplikaci:dotnet run --configuration Release --no-build --project Tailspin.SpaceGame.WebNa nové kartě prohlížeče přejděte na
http://localhost:5000spuštěnou aplikaci.Vidíte, že domovská stránka obsahuje aktualizovaný text.
Až budete hotovi, vraťte se do okna terminálu a stisknutím kombinace kláves Ctrl+C zastavte spuštěnou aplikaci.
Potvrzení a nasdílení větve
Tady připravíte změny souboru Index.cshtml, potvrdíte změnu do větve a nasdílíte větev do GitHubu.
Spusťte kontrolu a zkontrolujte
git status, jestli ve vaší větvi nejsou nepotvrzené změny:git statusUvidíte, že index.cshtml byl změněn. Stejně jako předtím je dalším krokem ověření, že Git sleduje tento soubor, který se nazývá příprava souboru.
Spusťte následující
git addpříkaz k přípravě Index.cshtml:git add Tailspin.SpaceGame.Web/Views/Home/Index.cshtmlSpuštěním následujícího
git commitpříkazu potvrďte fázovaný soubor dofeature/home-page-textvětve:git commit -m "Improve the text at the top of the home page"Spuštěním tohoto
git pushpříkazu nasdílejte nebo nahrajte větev do úložiště na GitHubufeature/home-page-text:git push origin feature/home-page-textStejně jako předtím můžete svou větev vyhledat na GitHubu z rozevíracího seznamu větve.
Sledujte, jak Azure Pipelines sestaví aplikaci
Azure Pipelines stejně jako dříve při nasdílení změn do GitHubu automaticky zařadí do fronty sestavení.
Jako volitelný krok sledujte sestavení, jak prochází kanálem, a ověřte, že sestavení proběhne úspěšně.
Synchronizace všech změn v hlavní větvi
Zatímco jste pracovali na funkci, mohly se změny ve vzdálené main větvi provést. Než vytvoříte žádost o přijetí změn, je běžné získat nejnovější verzi ze vzdálené main větve.
Uděláte to tak, že nejdřív přejdete na main větev nebo na tuto větev přepnete. Poté sloučíte vzdálenou větev main s místní větev main.
Pak se podívejte na větev funkce a pak větev funkcí sloučíte s větví main.
Pojďme si teď tento proces vyzkoušet.
V terminálu spusťte tento
git checkoutpříkaz a podívejte se namainvětev:git checkout mainPokud chcete stáhnout nejnovější změny ve vzdálené
mainvětvi a tyto změny sloučit do místnímainvětve, spusťte tentogit pullpříkaz:git pull origin mainVzhledem k tomu, že nikdo ve vaší větvi ve skutečnosti
mainneprodá žádné změny, následující příkaz vám řekne, že všechno už je aktuální.From https://github.com/username/mslearn-tailspin-spacegame-web * branch main -> FETCH_HEAD Already up to date.Pokud si chcete prohlédnout větev funkcí, spusťte
git checkout:git checkout feature/home-page-textSloučit větev funkce s
main:git merge mainOpět platí, že nikdo ve vaší větvi ve skutečnosti
mainneprodá žádné změny, vidíte, že všechno je stále aktuální.Already up to date.Pokud jste provedli začlenění jakýchkoli změn, měli byste aplikaci otestovat znovu, abyste měli jistotu, že všechno pořád funguje.
Opětovné nasdílení místní větve
Po začlenění změn ze vzdáleného úložiště do vaší místní větve funkce je třeba podruhé nasdílet vaši místní větev zpět do vzdáleného úložiště.
I když jste nezačlenili žádné změny ze vzdáleného úložiště, pojďme si tento proces vyzkoušet, abychom viděli, co se stane.
Spuštěním tohoto
git pushpříkazu nasdílejte změny do GitHubu:git push origin feature/home-page-textOdpověď opět říká, že už jste aktuální, protože nebyly provedeny žádné změny.
Everything up-to-date
Odeslání žádosti o přijetí změn
V této části odešlete žádost o přijetí změn stejně jako dříve.
V prohlížeči se přihlaste k GitHubu.
Přejděte do svého úložiště mslearn-tailspin-spacegame-web .
V rozevíracím seznamu vyberte svoji
feature/home-page-textvětev.Pokud chcete zahájit žádost o přijetí změn, vyberte Možnost Přispívat a pak Otevřít žádost o přijetí změn.
Ujistěte se, že základní rozevírací seznam určuje vaše úložiště, nikoli úložiště Microsoftu.
Důležité
Tento krok je opět důležitý, protože nemůžete sloučit změny do úložiště Microsoftu.
Pokud pracujete přímo s vlastním úložištěm a nepoužíváte fork, vybere se vaše větev
mainautomaticky.Zadejte název a popis žádosti o přijetí změn.
- Název: Vylepšení textu v horní části domovské stránky
- Popis: Dostal(a) nejnovější text domovské stránky od produktového týmu.
Pokud chcete žádost o přijetí změn dokončit, vyberte Vytvořit žádost o přijetí změn.
Tímto krokem se nesloučí žádný kód. Ostatním říká, že máte změny, které navrhujete ke sloučení.
Zobrazí se okno žádosti o přijetí změn. Stejně jako předtím aktivuje žádost o přijetí změn Službu Azure Pipelines, která ve výchozím nastavení sestaví vaši aplikaci.
Volitelně můžete vybrat odkaz Podrobnosti nebo přejít do svého projektu na Azure DevOps a sledovat spuštění pipeline.
Po dokončení sestavení se vraťte k žádosti o přijetí změn na GitHubu.
Vyberte Sloučit pull request a pak vyberte Potvrdit sloučení.
Vyberte Odstranit větev, abyste odstranili větev z GitHubu
feature/home-page-text.