GitLab – Práce na projektu (verze pro VisualStudio)

Posted on Posted in GitLab

Tento článek se zabývá postupem, jak pracovat a vyvíjet na projektu uloženém v git repozitáři pomocí vývojářského prostředí VisualStudia 2017.

Stažení projektu

Nejprve je třeba si udělat lokální kopii projektu. Nejčastěji se využívá odkazu založeném na HTTPS nebo SSH. V GitLabu se odkaz nachází na stránce detailu projektu.

Detail projektu - Hlavní informace
Detail projektu – Hlavní informace

Odkaz si zkopírujeme a otevřeme si VisualStudio. Po otevření přejdeme do okna Team Explorer a přepneme se do správy propojených repozitářů Správa připojení . V sekci Local Git Repositories klikneme na akci Clone a vložíme zkopírovaný odkaz na projekt. Poté vybereme umístění, kde se má lokální kopie projektu vytvořit.

Stažení projektu z repozitáře
Stažení projektu z repozitáře
Zobrazení staženého projektu
Zobrazení staženého projektu

 

Pokud chceme začít pracovat  v rámci některého projektu z repozitáře, můžeme vyprat Solution přímo z adresářové struktury, která se nám otevřela v Solution Exploreru. Pokud máme VisualStudio připojeno k repozitáři, můžeme také využít Team Exploreru. Ve výchozím zobrazení Výchozí obrazovka se v sekci Solutions zobrazují všechny dostupné .sln soubory obsažené v repozitáři.

V případě, že je VisualStudio v pořádku připojeno k repozitáři, je ve stavové liště VisualStudia zobrazen podrobný přehled o aktuálním stavu.

Stavová lišta VisualStudia - Git
Stavová lišta VisualStudia – Git

Zobrazované informace zleva:

  • Počet změn čekajících na synchronizaci
  • Počet uložených změn (commitů)
  • Název aktuálního repozitáře
  • Název aktuální větve
Projekty v repozitáři
Projekty v repozitáři

Vývoj

Vytvoření větve

Pokud máme zadaný nějaký tiket, můžeme se vrhnout do práce. V rámci zachování Best Practices se každá nová funkcionalita, oprava chyby, nebo úprava již stávajícího řešení provádí v separátní větvi. Na přehled vývojových větví se dostaneme pomocí tlačítka Branches v okně Team Exploreru v sekci Project na výchozí obrazovce, nebo pomocí rozklikávacícho menu hned pod horní nástrojovou lištou Team Exploreru.  Novou větev pak můžeme vytvořit pomocí akce New Branch.

Přehled vývojových větví
Přehled vývojových větví
Vytvoření nové větve
Vytvoření nové větve

Podle konvencí začíná název větve slovem feature. Název větve může být pro přehlednost shodný s názvem tiketu. V názvu větve se ale bohužel nesmí objevovat mezery, proto je vhodné je nahradit nějakým zástupným znakem (v tomto případě podtržítkem _). Takto vytvořená větev se nyní nachází pouze v lokální kopii projektu. (Prázdnou větev můžeme do repozitáře uložit pomocí kliku pravým tlačítkem myši a výběrem akce Push)

Uložení změn

Nyní můžeme v klidu vyvíjet…

Jakmile uděláme nějaké změny, aktualizují se nám informace ve stavovém řádku.

Stavová lišta VisualStudia – Git - Počet změn
Stavová lišta VisualStudia – Git – Počet změn

Potom, co máme práci hotovou, můžeme si změny uložit. K uloženým změnám se pak můžeme případně pohodlně vracet. Proto je vhodné provádět uložení změn po každém logickém bloku odvedené práce. Popis změn by měl vždy být vypovídající a čitelný. V případě integrace tiketovacího nástroje (JIRA, TargetProcess,…), může také obsahovat id tiketu. Změny se tak mohou pohodlně propsat.

Uložení a popis změn
Uložení a popis změn
Možnosti uložení změn
Možnosti uložení změn

Při uložení máme několik způsobů jak propagovat změny do repozitáře:

  • Commit All – Uloží všechny změny pouze lokálně
  • Commit All and Push – Uloží změny lokálně a také založí aktuální vývojovou větev do repozitáře (využívá se pokud větev existuje pouze lokálně)
  • Commit All and Sync – Uloží změny lokálně, sesynchronizuje případné změny z repozitáře a v případě, že nedošlo ke konfliktu, sesynchronizuje zpět do repozitáře

V případě, že provedeme uložení změn pouze lokálně, aktualizuje se informace ve stavovém řádku a bude indikovat, kolik provedených změn ještě čeká na zápis do repozitáře.

Stavová lišta VisualStudia – Git - Lokální změny čekající na synchronizaci
Stavová lišta VisualStudia – Git – Lokální změny čekající na synchronizaci

Přepínání mezi větvemi

Mezi větvemi se můžeme libovolně přepínat, jediný požadavkem je, mít před přepnutím uložené všechny provedené změny (alespoň lokálně). V přehledu větví v Team Exploreru můžeme najít také větve, které jsou pouze v repozitáři (online). Dvojklikem na danou větev se stáhne lokální kopie (pokud už není) a prostředí se přepne do této větve.

Pokud začnete pracovat na vývoji v už existující větvi, kterou máte staženou lokálně, je vždy lepší nejdříve provést její synchronizaci s repozitářem.

Zdroje:

https://git-scm.com/docs/

https://docs.gitlab.com/ee/README.html

https://danielkummer.github.io/git-flow-cheatsheet/