Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Visual Studio 2019 | Visual Studio 2022
Jakmile všichni požadovaní recenzenti schválí váš pull request (PR) a PR splní všechny požadavky zásad větve, můžete změny sloučit do cílové větve a dokončit PR. Nebo pokud se rozhodnete nepokračovat ve změnách v PR, můžete PR opustit.
Chcete-li řešit změny od revidujících, reagovat na komentáře a vyřešit je, přečtěte si Řešení komentářů.
Požadavky
| Kategorie | Požadavky |
|---|---|
| Přístup k projektu | Člen projektu. |
| Oprávnění | - Zobrazit kód v soukromých projektech: Alespoň Základní přístup. - Klonování nebo přispívání do kódu v soukromých projektech: Člen skupiny zabezpečení přispěvatelů nebo s odpovídajícími oprávněními v projektu. – Nastavte oprávnění pro větev nebo úložiště: Správa oprávnění oprávnění pro větev nebo úložiště. – Změnit výchozí větev: Upravit zásady oprávnění pro úložiště. – Import úložiště: Člen skupiny zabezpečení Projektoví administrátoři nebo oprávnění Vytvořit úložiště na úrovni projektu Git nastavená na Povolit. Další informace najdete v tématu Nastavení oprávnění úložiště Git. |
| Služby | Repozitáře povoleny. |
| Nástroje | Volitelný. Použijte příkazy az repos: Azure DevOps CLI. |
Poznámka:
Ve veřejných projektech mají uživatelé s přístupem na úrovni Stakeholder plný přístup k Azure Repos, které zahrnují zobrazení, klonování a přispívání ke kódu.
| Kategorie | Požadavky |
|---|---|
| Přístup k projektu | Člen projektu. |
| Oprávnění | - 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 rámci projektu. |
| Služby | Repozitáře povoleny. |
Další informace o oprávněních a přístupu naleznete v částech Výchozí oprávnění úložiště Git a větve a Informace o úrovních přístupu.
V Azure DevOps Services můžete z rozhraní příkazového řádku Azure (CLI) s rozšířením spravovat PR a další prostředky. Informace o tom, jak pracovat s rozhraním příkazového řádku Azure DevOps Services, najdete v tématu Začínáme s Azure DevOps CLI. Příkazy CLI pro žádosti o přijetí změn v Azure Repos používají az repos pr.
Zkontrolovat změny po sloučení
Po dokončení žádosti o přijetí změn Git přidá na konec hlavní větve nové potvrzení sloučení. Tento slučovací potvrzení propojuje dřívější historii hlavní větve a zdrojové větve pull requestu. Pokud chcete zobrazit náhled potvrzení sloučení a zkontrolovat konflikty při sloučení, vyberte nabídku Další možnosti v pravém horním rohu na stránce Přehled PR, a pak vyberte Zobrazit změny sloučení.
Pokud jste po vytvoření žádosti o přijetí změn změnili cílovou větev, výběrem Restartovat sloučení vytvořte nové náhledové potvrzení sloučení a aktualizujte zobrazení rozdílu sloučení.
Přezkoumání zásad větví
Týmy můžou nastavit zásady větví, které vyžadují, aby PR v chráněných větvích splňovaly konkrétní kritéria před jejich sloučením. Uvidíte zásady pro větve použité na váš PR, zda jsou vyžadovány ke sloučení, a zda PR uspěje nebo selže.
Karta Přehledu PR shrnuje zásady větví, které prochází nebo selhávají pro daný PR. Přehled obsahuje pouze nezdařené zásady, ale všechny kontroly zásad můžete zobrazit výběrem možnosti Zobrazit <n> kontrol.
Na stránce Přehled PR se u požadavků na zásady větví zobrazuje
ikona. Vyberte Další možnosti vedle požadavku a potom vyberte Zobrazit zásadu a přejděte na stránku politik větve v Nastavení projektu.
Dokončení pull requestu
Jakmile vyřešíte všechny konflikty při slučování a PR splňuje všechna pravidla větví a má všechna požadovaná schválení, můžete PR dokončit.
Výběrem možnosti Dokončit v pravém horním rohu dokončete PR. Nebo klikněte na šipku rozbalovacího seznamu vedle tlačítka Dokončit a vyberte jednu z možností.
- Dokončete PR: Dokončete PR nyní a sloučte změny do cílové větve.
- Nastavit automatické dokončování: Nakonfigurujte PR tak, aby se dokončil a sloučil, jakmile splňuje všechny požadované zásady větve.
- Označit jako koncept: Vraťte žádost o přijetí změn do stavu konceptu a odeberte všechny hlasy.
- Opustit: Uzavřít pull request bez sloučení změn.
V podokně Dokončit požadavek na začlenění, v části Typ sloučení, vyberte jednu z možností sloučení.
- Sloučení (bez rychlého posunu): Sloučit s nelineární historií, která zachovává všechny commity.
- Squash commit: Sloučení s lineární historií, která kombinuje všechny zdrojové commity do jednoho commitu v cíli, nebo squash sloučí PR. Mějte na paměti, že pro cílovou větev se vytvoří nové potvrzení bez zachování historie potvrzení ze zdrojové větve.
- Rebase a fast-forward: Přesuňte (rebase) zdrojové commity na cílovou větev a proveďte fast-forward.
- Pololineární sloučení: Rebáze zdrojových commitů na cíl a vytvoření dvou-rodičovského sloučení.
Poznámka:
Vynucují se existující zásady. Pokud má například vaše větev aktuálně zásadu „pouze squash merge“, musíte tuto zásadu změnit, pokud chcete použít jiný typ sloučení.
Vyberte některou z následujících možností po dokončení. Některé možnosti nejsou k dispozici pro některé typy sloučení.
- Dokončení přidružených pracovních položek po sloučení: Dokončete všechny propojené pracovní položky.
- Odstranit <větev> po sloučení: Po sloučení odstranit zdrojovou větev PR.
- Přizpůsobit zprávu sloučení: Zadejte vlastní zprávu k zápisu sloučení. Pokud vyberete tuto možnost, aktualizujte zprávu potvrzení sloučení.
- Ponechte zásady větve stranou a povolte slučování. Přinuťte sloučení, i když PR nenaplňuje všechny zásady větve. Tato možnost je dostupná jenom v případě, že máte oprávnění Výjimka z vynucování zásad.
Vyberte Dokončit sloučení.
Po dokončení sloučení se všechny propojené pracovní položky automaticky aktualizují k zobrazení dokončení PR.
Rebase během dokončování pull requestu
V několika situacích není možné provést přepisování historie během dokončování pull requestu.
- Pokud zásada v cílové větvi zakazuje použití rebase strategií, potřebujete oprávnění přepisovat zásady větve pro provedení rebase.
- Pokud zdrojová větev pull requestu obsahuje zásady, nelze ji rebázovat. Rebasing by změnilo zdrojovou větev bez projití procesem schvalování zásad.
- Pokud jste k řešení konfliktů při slučování použili rozšíření Merge Conflict, nemůžete rebasovat. Řešení konfliktů použitá u trojcestné sloučení jsou zřídka úspěšná nebo platná při opakovaném použití všech potvrzení žádosti o přijetí změn jednotlivě.
Ve všech těchto případech můžete svou větev znovu provést rebase lokálně a pak poslat upstream, nebo změny můžete squash sloučit, když dokončíte pull request (PR).
Problém s více spojovacími základnami
V některých případech má PR více než jednu správnou základnu pro sloučení, a tato situace může způsobit bezpečnostní problémy. Pokud mají soubory v žádosti o přijetí změn v různých základech sloučení různé verze, zobrazí se upozornění na více základů sloučení. Další informace a opravná opatření naleznete v tématu Více základů slučování.
Vyřešení konfliktů při slučování
Změny souboru ve vaší větvi můžou být v konfliktu se změnami v jiné větvi. Pokud není jasné, jak sjednotit změny, Git zobrazí soubory, které jsou v konfliktu, na stránce Přehled pull requestu. Než budete moci sloučit pull request nebo nastavit jeho automatické dokončení, musíte vyřešit všechny konflikty slučování mezi větví pull requestu a cílovou větví. Pokyny k řešení konfliktů při sloučení najdete v tématu Řešení konfliktů při slučování.
Nastavte pull request na automatické dokončení
V rozevíracím seznamu Kompletace vyberte Nastavit automatické dokončování, abyste dokončili a sloučili změny žádosti o začlenění, jakmile podmínky splní všechny zásady větve. Po dokončení PR obdržíte e-mailové oznámení. Pokud konflikt nebo chyba brání dokončení PR, dostanete e-mail s oznámením o problému.
Poznámka:
Možnost Nastavit automatické dokončování je dostupná v Azure Repos a TFS 2017 a novějších, pokud máte zásady větví. Pokud nevidíte možnost Nastavit automatické dokončování, nemáte žádné zásady větve. Další informace naleznete v tématu Zásady větví.
Ve výchozím nastavení žádost o přijetí změn (pull request) nastavená na automatické dokončení čeká pouze na povinné politiky. Na panelu Povolit automatické dokončování můžete také počkat na volitelné zásady.
Od TFS 2018 Update 2 se na stránce Přehled PR žádosti o přijetí změn zobrazí seznam nevyřízených kritérií zásad, na která PR čeká. Pokud jste na panelu Povolit automatické dokončování nastavili požadovanou zásadu, můžete ji nastavit zpět na volitelnou na stránce Přehled .
Pokud chcete automatické dokončování vypnout, vyberte Zrušit automatické dokončování .
Žádost o přijetí změn nastavená na automatické dokončování zobrazuje na stránce Žádosti o přijetí změn odznak „Automatické dokončování“.
Zrušení nebo reaktivace pull requestu
Pokud chcete opustit změny a svůj PR bez sloučení, vyberte z rozevíracího seznamu na tlačítku Dokončit možnost Opustit. Stále můžete zobrazit opuštěnou žádost o přijetí změn, která zůstává propojená s pracovními položkami.
Pokud chcete PR kdykoli znovu aktivovat, otevřete ho z karty Opuštěná v zobrazení Žádosti o přijetí změn a vyberte možnost Znovu aktivovat v pravém horním rohu.
Vrátit změny z dokončeného pull requestu
Chcete-li zrušit změny z požadavku na přijetí (PR), postupujte takto. Další informace naleznete v tématu Vrácení změn.
Otevřete dokončený PR a vyberte Zpět. Tato akce vytvoří novou větev se změnami, které odvrátí PR v existující cílové větvi ve vašem úložišti.
V podokně Vrátit zpět žádost o přijetí změn:
- V části Cílová větev vyberte větev, ve které chcete změny žádosti o přijetí vrátit.
- V části vyžadován název tématické větve můžete změnit název větve PR pro vrácení, pokud chcete.
- Vyberte Vrátit zpět.
Na obrazovce Nový pull request vyberte Vytvořit.
Sloučením nové PR dokončete revertování.
Poznámka:
Větev vytvořená během tohoto vrácení změn obsahuje jediný commit, který vrátí všechny změny souboru z původního PR. Větev neobsahuje revert pro každý z commitů v původním PR.