Implementace pracovního postupu forku

Dokončeno

fork je kopie úložiště. Vytvoření forku úložiště umožňuje experimentovat se změnami, aniž by to ovlivnilo původní projekt volně.

Nejčastěji se forky používají k návrhu změn projektu někoho jiného. Nebo použijte projekt někoho jiného jako výchozí bod pro váš nápad.

Fork je úplná kopie úložiště, včetně všech souborů, potvrzení a (volitelně) větví.

Forky představují skvělý způsob, jak podporovat pracovní postup vnitřního zdroje: můžete vytvořit fork, který navrhne změny, pokud nemáte oprávnění k zápisu do původního projektu přímo.

Jakmile budete připraveni tyto změny sdílet, můžete je snadno přispívat zpět pomocí žádostí o přijetí změn.

Co je ve forku?

Fork začíná veškerým obsahem svého upstreamového (původního) úložiště.

Můžete zahrnout všechny větve nebo je omezit pouze na výchozí větev při vytváření forku.

Žádná z oprávnění, zásad nebo kanálů sestavení se nepoužije.

Nový fork funguje, jako by někdo naklonoval původní úložiště a pak ho odeslal do nového prázdného úložiště.

Po vytvoření forku se mezi úložišti nesdílí nové soubory, složky a větve, pokud je nepřenese žádost o přijetí změn.

Sdílení kódu mezi forky

Žádosti o přijetí změn můžete vytvořit v obou směrech: z forku do upstreamu nebo upstreamu do forku.

Nejběžnějším přístupem bude fork až upstream.

Oprávnění, zásady, sestavení a pracovní položky cílového úložiště se použijí pro žádost o přijetí změn.

Volba mezi větvemi a forky

Pro malého týmu (2–5 vývojářů) doporučujeme pracovat v jednom úložišti.

Všichni by měli pracovat ve větvi tématu a hlavní by měli být chráněni pomocí zásad větví.

S tím, jak váš tým roste významnější, můžete zjistit, že toto uspořádání přeroste a raději přepnete na pracovní postup pro vytváření forků.

Pracovní postup pro vytváření forků doporučujeme, pokud má vaše úložiště mnoho neformálních nebo občasných výborů (například opensourcový projekt).

Oprávnění k přímému potvrzení do úložiště mají obvykle jenom základní přispěvatelé vašeho projektu.

To by vám pomohlo, kdybyste požádali spolupracovníky mimo tuto základní sadu lidí, aby pracovali z forku úložiště.

Kromě toho se jejich změny oddělí od vašich, dokud nebudete mít šanci práci projít.

Pracovní postup forku

  • Vytvořte fork.
  • Naklonujte ho místně.
  • Proveďte změny místně a nasdílejte je do větve.
  • Vytvoření a dokončení žádosti o přijetí změn pro upstream
  • Synchronizujte fork s nejnovějším z upstreamu.

Vytvoření forku

  1. Přejděte do forku úložiště a zvolte fork.
  2. Zadejte název a zvolte projekt, ve kterém chcete vytvořit fork. Pokud úložiště obsahuje mnoho větví tématu, doporučujeme vytvořit fork pouze výchozí větev.
  3. Zvolte tři tečky a pak fork vytvořte fork.

Diagram znázorňující vytvoření forku

Poznámka:

Abyste mohli vytvořit fork, musíte mít ve zvoleném projektu oprávnění Vytvořit úložiště. Doporučujeme vytvořit vyhrazený projekt pro forky, ve kterých mají všichni přispěvatelé oprávnění Vytvořit úložiště. Příklad udělení tohoto oprávnění najdete v tématu Nastavení oprávnění úložiště Git.

Místní klonování forku

Jakmile je fork připravený, naklonujte ho pomocí příkazového řádku nebo integrovaného vývojového prostředí, jako je Visual Studio. Fork bude vaším vzdáleným zdrojem.

Pro usnadnění práce budete chtít po klonování přidat upstreamové úložiště (kam jste forkovali) jako vzdálené upstreamové úložiště.

git remote add upstream {upstream_url}

Provádění a nasdílení změn

Je možné pracovat přímo v hlavní části – koneckonců, tento fork je vaše kopie úložiště.

Doporučujeme ale pracovat ve větvi tématu.

Umožňuje současně udržovat více nezávislých pracovníchstreamů.

Také to snižuje nejasnosti později, když chcete synchronizovat změny do forku.

Proveďte a potvrďte změny běžným způsobem. Až změny dokončíte, nasdílejte je do zdroje (fork).

Vytvoření a dokončení žádosti o přijetí změn

Otevřete žádost o přijetí změn z forku do upstreamu. Všechny zásady, které kontroloři a buildy vyžadují, se použijí v upstreamovém úložišti. Po splnění všech zásad je možné žádost o přijetí změn dokončit a změny se stanou trvalou součástí upstreamového úložiště.

Diagram znázorňující vytvoření a dokončení žádosti o přijetí změn

Důležité

Každý, kdo má oprávnění ke čtení, může otevřít žádost o přijetí změn pro upstream. Pokud je nakonfigurovaný kanál sestavení žádosti o přijetí změn, sestavení se spustí proti kódu zavedenému ve forku.

Synchronizace forku na nejnovější verzi

Po přijetí žádosti o přijetí změn do upstreamu budete chtít zajistit, aby váš fork odrážel nejnovější stav úložiště.

Doporučujeme znovu použít hlavní větev upstreamu (za předpokladu, že hlavní větev je hlavní vývojová větev).

git fetch upstream main
git rebase upstream/main
git push origin

Pracovní postup forku umožňuje izolovat změny od hlavního úložiště, dokud nebudete připraveni je integrovat. Až budete připraveni, integrace kódu je stejně snadná jako dokončení žádosti o přijetí změn.