4it115»Git Lab

Git Lab

Zásady práce s git a GitLab.com

Pro práci s git můžete využít:

O práci s git je napsaná výborná kniha od Scotta Chacona a Bena Strauba s názvem Pro Git, která je k dispozici volně na webu na https://git-scm.com/book/cs/v2.

Při práci v příkazové řádce se může hodit Cheat Sheet od GitHubu.

Nasdílení existujího projektu na vzdálený repozitář

Sdílení lze v principu provést několika způsoby. Ve všech případech je lepší mít prázdný repozitář bez jediného commitu.

Při prvním nahrání projektu je třeba vyřešit, které soubory se mají sdílet na úložiště. Obecně platí zásada, že se sdílí jen zdrojový kód. Vhodné může být nastavení projektu, která jsou nezávislá na IDE, např. Maven (pom.xml) nebo Gradle (.gradle), ze kterých se projekt po naklonování snáze nastaví. Při sdílení projektu bez Maven nebo Gradle je třeba zvážit možnosti importu dle každého IDE (IDEA). Soubory, které se mají ignorovat je možné nastavit v nástroji na správu git, případně přímo v souboru .gitignore (viz https://git-scm.com/docs/gitignore).

Import projektu do IDE ze vzdáleného repozitáře

Import projektu lze provést snadno, pokud vzdálený repozitář obsahuje soubory, podle kterých se nastaví projekt IDE (viz odstavec výše).

Příklad importování projektu do Eclipse https://www.youtube.com/watch?v=WfGOKbUQvUQ&t=5s.

Strategie pro workflow

Git skvěle podporuje nelineární vývoj. Je vhodné držet se těchto zásad:

  • větev master používat jen pro větší funkční přírůstky
  • pracovat ve větvi dev
  • pro každou novou vlastnost vytvořit novou větev

Výborně zpracovaný tutoriál najdete na https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow.

Školní úložiště

Každý student má k dispozici prostor pro vytváření vlastních vzdálených repozitářů na GitLab.com. URL odpovídá této konvenci:

Každý student má právo Maintainer, který může vytvářet nové projekty a plně je kontrolovat, včetně sdílení dalším spolupracovníkům. Jediným omezením je mazání a přesun projektů na jiné umístění.

Konvencemi pro názvy projektů jsou:

  • xname-adventura-cv, pro prácí na adventuře během cvičení
  • xname-adventura-sem, pro práci na adventuře jako individuální semestrální práci
  • xname-tymova-prace, pro skupinvou semestrální práci

Skupinovou semestrální práci vytváří ve své složce jen vedoucí týmu, který přiděluje práva osatním členům týmu.