Přeskočit na obsah

Zkontrolujte a sloučte PR

Tenhle návod ukazuje, jak pull request zkontrolovat a sloučit.

Otevři pracovní plochu PR

Sekce “Otevři pracovní plochu PR”
  1. V postranním panelu přejdi na Pull requesty
  2. Vyber PR ze seznamu

PR se otevře jako pracovní plocha se záložkami. Ve výchozím stavu je jich pět, v tomhle pořadí: Přehled, Diff, Správa zdrojového kódu, Chat a Akce (kontroly CI seskupené podle workflow). Kontrola — nejdřív průběh pipeline kontroly, potom artefakt, který zveřejnila, s lištou zjištění — mezi nimi schválně není. PR kontrolu nemá, dokud o ni někdo nepožádá, takže ji otevře Zeptat se AI. Terminál, editor jednoho souboru, vložený code-server a prohlížeč v aplikaci se otevírají na vyžádání. Záložky náhledu nasazení se přidají samy, jakmile se na PR najde URL náhledu. Rozložení záložek se pamatuje pro každý PR zvlášť.

Záložka Přehled nese metadata PR (autor, větev, štítky, přiřazení, reakce, commity, stav kontrol) a řádek akcí: obnovení, Kontrola, Sloučit, otevření v IDE a rozbalovací nabídka ⋯.

Otevři záložku Diff. Uvidíš celý diff PR najednou a strom souborů, kterým mezi nimi přecházíš.

  • Tlačítko nastavení v liště diffu přepíná Rozdělený (vedle sebe) a Jednotný a zapíná Zalamovat řádky a Ligatury písma kódu.
  • Hlavičky hunků @@ nahrazují prvky Show N lines / Show end of file. Kliknutí doplní okolní kontext.
  • j / k přechází mezi soubory, c sbalí nebo rozbalí aktivní soubor, t vrátí postranní panel na strom souborů a ⌘F hledá v celém diffu (Enter / Shift+Enter prochází shody).
  • v označí aktivní soubor jako prohlédnutý a kurzor postoupí na další soubor. Na GitHubu se stav prohlédnutí ukládá na forge, takže tě doprovází mezi klienty. GitLab a Bitbucket takové API nemají, takže se tam pamatuje jen na tomhle zařízení.

Tažením myší v oblasti kódu vybereš text až po konkrétní sloupec a ⌘C zkopíruje surový zdroj, ne vykreslené značky diffu.

Nech řádkové komentáře

Sekce “Nech řádkové komentáře”
  1. Klepni na okraj řádku kódu. Otevře se editor ukotvený k tomu řádku. Tlačítko + v hlavičce souboru je komentář k celému souboru
  2. Napiš zpětnou vazbu v Markdownu
  3. Odešli

Na GitHubu a GitLabu má editor dvě odeslání: Přidat jeden komentář odejde hned a Zahájit kontrolu / Přidat ke kontrole zařadí komentář do čekající kontroly, která odchází s Schválit, Vyžádat změny nebo Komentář. Bitbucket dávkování čekající kontroly nemá, takže tam každé odeslání odchází hned. Okamžité odeslání se ukáže jako čekající, dokud ho forge nepotvrdí, a pak se přepne na synchronizováno. Když odeslání selže, vlákno se označí chybou a nabídne Zopakovat.

Koncept je jen tělo kontroly. Uloží se na serveru podle (vlastník, repozitář, číslo PR) chvíli poté, co přestaneš psát, takže přežije obnovení a jde s tebou mezi klientem na počítači a webovým.

  1. Stiskni Kontrola v řádku akcí na Přehledu (na vlastních PR a na zavřeném nebo sloučeném PR je skrytá)
  2. Napiš tělo kontroly. Můžeš přiložit obrázek, vložit emoji nebo GIF a přepínat mezi Psát a Náhled
  3. Stiskni Vyžádat změny, Komentář nebo Schválit

Verdikt je to tlačítko, bez samostatného výběru. Po Schválit nebo Vyžádat změny se tlačítko přejmenuje na Schváleno nebo Vyžádané změny a koncept těla se smaže. Verdikt Komentář nechá tlačítko s popiskem Kontrola.

Tlačítko Sloučit se ukáže, když máš právo zápisu a PR je otevřený a není koncept. Barva je signál připravenosti z požadovaných schválení a stavu kontrol (připraveno / čeká / blokováno) a jen radí. Stav kontroly tlačítko nikdy nevypne. Pravidla vynucuje ochrana větve na forge.

  1. Stiskni Sloučit. Otevře se panel sloučení
  2. Vyber způsob sloučení: Squash a sloučení, Vytvořit merge commit nebo Rebase a sloučení (Squash a sloučení je výchozí). Bitbucket skutečné sloučení rebase nemá, takže Rebase a sloučení odpovídá jeho strategii fast-forward a selže, když se větev rozešla
  3. U Squash a sloučení a Vytvořit merge commit uprav předvyplněný Název commitu a Popis commitu. Rebase a sloučení nebere ani jedno a obě pole skryje
  4. Přečti panel upozornění. Jmenuje Kontroly selhávají a Některé kontroly čekají, ale nezastaví tě
  5. Potvrď tlačítkem Sloučit pull request v panelu

Sloučení je nevratné: posílá commity na forge, takže má krok potvrzení místo položky pro vrácení zpět. Potom se mezipaměť PR zneplatní, stav se přepne na Sloučeno a vystřelí událost PullRequestStatusChanged se stavem merged. Ta událost uvolní dočasný worktree akce „Otevřít v editoru“ a spustí dvě předpřipravené pipeline: Stale repository cleanup, která smaže zastaralé worktree a složky konverzací toho PR, a Release notes, která sepíše položku changelogu.

Předej PR review agentům

Sekce “Předej PR review agentům”

Rozbalovací nabídka ⋯ na záložce Přehled má Zeptat se AI. Spustí předpřipravenou pipeline pr_review pro tenhle PR. Položka se ukáže, jen dokud je PR otevřený. Co pipeline dělá a jak zveřejnit zjištění, je v Používejte AI kontrolu. Deterministický model kohort a os je ve Výpočet kontroly.

Control Center si bere i PR, které lidé otevřeli mimo aplikaci. Postup kontroly nahoře je stejný. Externí PR pozná služba, která pull requesty obchází.