Vidličky

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Visual Studio 2019 | Visual Studio 2022

Tip

Můžete využít AI k pomoci s úkoly Azure DevOps. Informace o tom, jak začít, najdete v tématu Pomoc pro AI s Azure DevOps MCP Serverem.

Forky úložiště Git jsou užitečné, když uživatelé chtějí provádět experimentální, rizikové nebo skryté změny základu kódu, ale tyto změny je potřeba izolovat od základu kódu v původním úložišti. Nový fork je v podstatě nové vzdálené úložiště, které sdílí zdrojový kód původního úložiště.

Jako samostatná verze změny provedené ve vašem forku, jako například přidání commitu nebo větve, nejsou viditelné v původním úložišti. Pokud chcete sloučit změny základu kódu do původního úložiště, musíte vytvořit žádost o přijetí změn(PR), abyste mohli požádat o kontrolu a schválení těchto změn.

Proces forku nepřenese žádná oprávnění, zásady ani kanály buildu z původního úložiště do forku.

Tento článek se zabývá prací se forky v úložištích Git Azure Repos a obsahuje odkazy na obsah GitHubu, který popisuje, jak spravovat forky v úložištích GitHub.

V tomto článku získáte informace o těchto tématech:

  • Sdílet kód mezi forky
  • Volba mezi větvemi a forky
  • Povolit větvení repozitáře
  • Vytvoření forku
  • Naklonujte si svůj fork lokálně
  • Odeslat místní změny do vašeho forku
  • Vytvořit a dokončit PR.
  • Synchronizace forku

Požadavky

Kategorie Požadavky
Přístup k projektu Člen projektu.
Povolení - Zobrazit kód v soukromých projektech: Alespoň základní přístup.
- Klonovat nebo přispívat do kódu v soukromých projektech: Člen skupiny Contributors nebo odpovídající oprávnění v projektu.
– Nastavení oprávnění k větvi nebo úložišti: Správa oprávnění jsou oprávnění pro větev nebo úložiště.
– Změnit výchozí větev: Oprávnění k úpravám jsou určená pro repozitář.
– Import úložiště: Člen skupiny zabezpečení projektoví správci skupiny zabezpečení nebo Vytvořit úložiště na úrovni projektu Git oprávnění nastavená na Povolit. Další informace najdete v tématu Nastavení oprávnění úložiště Git.
Services repozitáře povoleny.
Tools Volitelný. Použití az repos příkazů: Azure DevOps CLI.

Poznámka:

Ve veřejných projektech mají uživatelé s přístupem Stakeholder plný přístup do Azure Repos, kde mohou zobrazovat, klonovat a přispívat ke kódu.

Kategorie Požadavky
Přístup k projektu Člen projektu.
Povolení - Zobrazit kód: Alespoň Základní přístup.
- Klonování nebo přispívání do kódu: Člen skupiny zabezpečení přispěvatelů nebo odpovídající oprávnění v projektu.
Services repozitáře povoleny.

Sdílet kód mezi forky

Původní úložiště se často označuje jako upstreamové úložiště. Můžete vytvořit PR ke sloučení změn v obou směrech: z forku do upstreamu nebo z upstreamu do forku. Nejběžnějším směrem je z forku do upstreamu. Oprávnění, zásady, sestavení a pracovní položky cílového úložiště se použijí pro pull request.

Volba mezi větvemi a forky

U malého týmu o 2 až 5 vývojářích nemusí být pracovní postup forcování nutný, protože každý může pracovat ve větvích funkcí a zásady větví mohou chránit výchozí větev. Pokud ale váš tým toto uspořádání přeroste, může přejít na pracovní postup větvení.

Pokud má vaše úložiště velký počet příležitostných nebo občasných přispěvatelů, jak tomu může být u open source projektů, doporučujeme workflow forku. Oprávnění k přímému potvrzení do vašeho původního úložiště by obvykle měli mít jenom základní přispěvatelé vašeho projektu. Ostatní spolupracovníci by měli použít forkovací workflow k izolaci navrhovaných změn, dokud hlavní přispěvatelé nebudou mít možnost zkontrolovat jejich navrhované změny.

Povolit větvení repozitáře

Pokud chcete povolit forky pro úložiště Git v Azure Repos, přečtěte si téma Povolení forků.

Pokud chcete povolit forky pro úložiště GitHub, přečtěte si téma Správa zásad forku pro vaši organizaci.

Pracovní postup větvení

Pracovní postup forku se skládá z pěti kroků popsaných v následujících částech.

  1. Vytvoření forku
  2. Místní klonování forku
  3. Odeslat místní změny do vašeho forku
  4. Vytvoření a dokončení PR
  5. Synchronizace forku

Vytvoření forku

Následující kroky popisují, jak vytvořit fork úložiště Git pro Azure Repos.

Poznámka:

Pokud chcete vytvořit fork úložiště v projektu Azure DevOps, musíte mít oprávnění Create Repository pro tento projekt. Vlastníci úložiště by měli zvážit vytvoření dedikovaného projektu pro odnože a přidělit oprávnění k tvorbě nových úložišť všem přispěvatelům. Další informace o nastavení oprávnění najdete v tématu Nastavení oprávnění úložiště Git.

  1. Ve webovém prohlížeči přejděte do úložiště Git Azure Repos, které chcete forknout. Vyberte Soubory > úložiště a potom v nabídce se třemi tečkami zvolte Fork, čímž otevřete dialog Fork.

    Snímek obrazovky s položkou nabídky

  2. V dialogovém okně Fork pojmenujte forkované úložiště, zvolte projekt, ve kterém chcete vytvořit fork, vyberte větve, které chcete zahrnout do forku, a pak zvolte Fork. Můžete určit, jestli fork bude obsahovat všechny větve, nebo jenom výchozí větev. Pokud úložiště obsahuje několik větví tématu, zvažte zahrnutí pouze výchozí větve do forku.

    Snímek obrazovky s dialogovým oknem Fork na stránce Soubory úložiště v Azure Repos

Informace o tom, jak vytvořit fork úložiště GitHub, najdete v tématu Vytvoření forku úložiště.

Naklonujte si svůj fork lokálně

Po forknutí úložiště naklonujte svůj fork a vytvořte místní kopii na svém počítači. Můžete klonovat z příkazového řádku nebo pomocí integrovaného vývojového prostředí, jako je Visual Studio. Další informace o klonování úložiště najdete v tématu Klonování existujícího úložiště Git.

Při klonování vzdáleného úložiště git přiřadí alias origin jako zkratku pro adresu URL vzdáleného úložiště, které jste naklonovali. Pro usnadnění můžete přidat další alias pojmenovaný upstream pro úložiště, ze kterého jste rozvětvili, což se označuje jako nadřazené úložiště. Následující kroky popisují, jak přidat upstream alias.

Tip

Pro usnadnění můžete v příkazech Gitu používat tyto aliasy origin a upstream místo odpovídajících adres URL.

Pokud chcete přidat upstream alias v sadě Visual Studio, postupujte takto:

  1. V řádku nabídek zvolte > nástroje a otevřete okno Možnosti. Vyberte > a pak zvolte > pro otevření dialogového okna Přidat vzdálené úložiště.

    Snímek obrazovky s tlačítkem Přidat v okně Vzdálená úložiště v podnabídce Nastavení úložiště Git v menu Správa zdrojového kódu ve Visual Studio 2019

  2. V dialogovém okně Přidat vzdálené úložiště přidejte nové vzdálené úložiště pojmenované a zadejte Git klonovací adresu URL úložiště, které jste forkli. Pak zvolte Uložit.

    Snímek obrazovky dialogového okna Přidat vzdálené úložiště v sadě Visual Studio 2019.

Odeslat místní změny do vašeho forku

Při vytváření forku vytvoříte osobní verzi původního úložiště (původní úložiště se označuje jako "upstream"). Fork je nezávislý na upstreamu, ale fork sdílí kód a zachovává odkaz na upstream, což umožňuje budoucí synchronizaci. Takže vám nic nebrání pracovat přímo ve main větvi místního klonu a následně odeslat tuto práci do main větve vašeho forku. Obecně je ale lepší používat funkční větve pro vaši práci. Pomocí větví funkcionalit:

  • Můžete současně udržovat více nezávislých pracovních toků.

  • Ostatním usnadníte pochopení práce, kterou sdílíte, protože tato práce je uspořádaná do různých pracovních proudů podle větví.

Typický pracovní postup Gitu zahrnuje tyto kroky:

  1. Vytvořte místní funkci nebo větev pro opravu chyb.

  2. Proveďte změny v nové větvi a potvrďte svou práci. Lidé obvykle při vývoji funkce nebo opravě chyb dělají několik commitů.

  3. Pushněte větev pro opravu chyb nebo funkci do odvozeného repozitáře. Váš fork má alias origin.

Informace o tom, jak propushovat své změny, najdete v tématu Sdílení kódu pomocí push.

Vytvořit a dokončit PR.

Pokud chcete v Azure Repos sloučit do původního úložiště změny, které jste odeslali do forku, můžete:

  1. Vytvořte žádost o přijetí změn a požádejte o revizi a schválení změn. Když otevíráte PR, nastavte zdrojovou větev PR na větev s funkcí nebo opravou chyby ve vašem forku. Cílová větev pull requestu je obvykle main větev úložiště, které jste forkli. Toto úložiště se označuje jako upstreamové úložiště a má alias upstream.

    Následující snímek obrazovky ukazuje zdrojové úložiště a větev a cílové úložiště a větev pull requestu (PR) vytvořeného v Azure Repos.

    Snímek obrazovky možností zdrojové a cílové větve PR v Azure Repos

    Další informace o tom, jak vytvořit žádost o přijetí změn pomocí prohlížeče, sady Visual Studio nebo Azure DevOps CLI, najdete v tématu Vytvoření žádosti o přijetí změn.

    Důležité

    Všichni uživatelé v Project Valid Users a s oprávněním Číst v upstream repo můžou otevřít pull request. Pokud má upstreamové úložiště sestavení pipeline pro žádost o přijetí změn, který je nakonfigurovaný tak, aby se spouštěl při vytváření žádosti, sestavení začne na změnách zavedených vaší žádostí o přijetí změn.

  2. Aby se vaše žádost o přijetí změn dokončila, musí všichni povinní kontroloři schválit změny žádosti o přijetí změn a musí být splněny všechny zásady cílové větve. Při schválení a dokončení pull requestu se změny ve zdrojové větvi pull requestu sloučí do cílové větve.

Pro informace o tom, jak vytvořit a dokončit pull request na GitHubu, viz Vytvoření pull requestu a Slučování pull requestu.

Synchronizace forku

Po sloučení změn z vašeho forku do cílové větve upstream repo můžete stáhnout z cílové větve upstream repo a aktualizovat odpovídající místní větev s vašimi změnami i všemi změnami provedenými jinými přispěvateli. Pak jste připraveni:

  • Vytvořte novou funkci nebo větev pro opravu chyb z aktualizované místní větve.

  • Aktualizujte svůj fork vysláním z aktualizované místní větve do origin.

Obvykle je cílová větev upstreamového úložiště main. Pokud přímo neupravujete svou místní větev main (tj. pracujete ve funkčních větvích), pak stažením z nadřazené větve aktualizujete svou místní větev upstream/main bez konfliktů při slučování.

Další kroky