Zásady práce s git a GitLab.com
Š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:
https://gitlab.com/FIS-VSE/4IT115/2023LS/cviceni/xname
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.
Při vytváření projektu dbejte prosím zvýšenou pozornost umístění projektu. Projekty vytvořené na GitLab.com mimo strukturu školního úložiště nebude možné obhájit.
Možnosti práce s gitem
Pro práci s gitem 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.
- Vytvořit lokální repozitář a později k němu připojit k vzdálený.
- Klonovat prázdný repozitář a přesunout do něj projekt. Názornou ukázku způsobu v prostředí Eclipse najdete na https://www.youtube.com/watch?v=AIOlHS6-asI.
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.