Prozkoumání správy zdrojového kódu a správy verzí

Dokončeno

Použití správy zdrojového kódu a verzí je základním postupem DevOps. Je také předpokladem pro takové postupy, jako je kontinuální integrace a infrastruktura jako kód, z nichž obě jsou zásadní pro dosažení plného potenciálu DevOps. Organizace v našem ukázkovém scénáři by měla zkontrolovat aktuální strategii vývoje softwaru pro spolupráci a přejít na model distribuované správy verzí, jako je Git, zejména s ohledem na plány použití GitHubu pro správu životního cyklu softwaru. To však vyžaduje řádné porozumění principům správy verzí a zdrojového kódu a jejich výhodám, které zde probereme.

Správa zdrojového kódu a správa verzí

snímek obrazovky se systémem správy zdrojového kódu s více soubory a jejich historií verzí

Termíny správy zdrojového kódu a správy verzí se často používají zaměnitelně a v mnoha kontextech odkazují na stejný koncept. Obecně platí, že obě jsou spojeny s postupem správy změn kódu ve sdíleném vývojovém prostředí. Můžete se však setkat s více drobnými scénáři, ve kterých se jejich význam mírně liší. V těchto scénářích správy zdrojového kódu určí systém, který spravuje změny souborů zdrojového kódu, zatímco správa verzí zahrnuje správu změn libovolného typu souboru pro účely, které překračují rámec samotného zdrojového kódu. V zájmu konzistence budeme používat termín správy verzí k reprezentaci úložišť softwaru založených na Gitu, která jsou k dispozici v GitHubu a Azure DevOps.

Jaké jsou výhody správy verzí?

Správa verzí sleduje změny souborů v rámci jeho rozsahu správy. Nabízí širokou škálu výhod:

  • Historie a sledování verzí: Máte možnost zkontrolovat historii změn v libovolném souboru, včetně možnosti určit, kdy se jednotlivé změny uskutečnily a jaký byl jejich rozsah. To také poskytuje sledovatelnost, obvykle přidružením každé sady změn k jedinečnému identifikátoru.

  • vrácení zpět a obnovení: Pokud dojde k chybě nebo problému, můžete snadno vrátit změny a obnovit známou funkční verzi ovlivněného souboru.

  • větvení a slučování: Pokud potřebujete rozšířit funkce aktuálního kódu přidáním další funkce nebo opravit nově zjištěnou chybu, můžete vytvořit tzv. větev, která umožňuje nezávisle pracovat s existujícím základem kódu. Nová větev je zpočátku identická s hlavní větví hostující aktuální kód. Po dokončení změn sloučíte novou větev s hlavní větví. I když to může vést k konfliktům (pokud se mezitím jiný vývojář rozhodl upravit stejnou sadu souborů prostřednictvím jiné větve), jejich rozsah je omezený a obvykle se dá snadno identifikovat a vyřešit.

    snímek obrazovky strategie větve s více větvemi, včetně hlavní větve, opravy chyb a funkcí

  • spolupráce a paralelní vývoj: Ustanovení o řešení konfliktů doplněná větvením a sloučením usnadňují práci více vývojářů na stejném základu kódu, což zvyšuje efektivitu. Díky distribuovaným řídicím systémům, jako je Git, je dokonce možné vytvořit kód v odpojeném režimu. Spolupráce zahrnuje také vzájemné hodnocení pull requestů, což podporuje sdílení znalostí a transparentnost.

  • automation: Správa verzí je důležitou součástí kontinuální integrace a automatizovaných nasazení. Automatizované sestavení a testování je možné aktivovat automaticky při každém odeslání nové verze kódu do úložiště správy verzí nebo sloučení s hlavní větví. Různé verze kódu je možné nasadit do různých prostředí.