Přímé sloučení větve, které tiše rozbije historii

Aus Rettungsdienst-Wiki
Zur Navigation springen Zur Suche springen

Klíčem k prevenci je podestýlka, která správně funguje ve dvou rovinách – drží sucho a zároveň pruží. Hobliny, hrubší piliny, sláma řezaná na krátké kousky nebo dřevěná štěpka jsou vhodné. Naopak jemný prach, mokrá sláma slepená do plátů nebo holá betonová podlaha nohy ničí. Podestýlku sypeme vrstvou alespoň pět centimetrů, u vstupu a pod hřady i více. Každý den vybereme vlhká a znečištěná místa, jednou za čas vyměníme celou vrstvu. Hnízdo s výkaly zůstávající uvnitř je častý zdroj problémů.

Pozor také na to, z čeho je houba vyrobena. Levné polyuretanové pěny se časem rozpadají a do vody se uvolňují mikročástice. Vybírejte houbu s jemnou strukturou a certifikátem pro styk s pitnou vodou. Pokud výrobce nedodává žádné informace, raději ji nepoužívejte. Stejně tak nepoužívejte houbu, která byla předtím v kontaktu s mycím prostředkem – i po vypláchnutí v ní zůstávají zbytky chemie.

Barvy a světlo dělají víc než nábytek. Světlé stěny a jedna výrazná plocha za hlavou postele vytvoří hloubku bez chaosu. Zrcadlo na stěně naproti oknu zdvojnásobí denní světlo, ale nemíchejte ho s dalšími odrazovými plochami – vzniká neklid. Jedna stropní lampa s teplým světlem a dvě malé lampičky u postele stačí. Místo velkého lustru, který opticky snižuje strop, použijte nástěnné svítidlo.

Nakonec zbavte povrchy všeho, co tam nemá funkci. Noční stolek stačí jeden, pokud je dost široký, nebo místo něj police na stěně. Koberec volte menší, jen pod nohy u postele, ne přes celou místnost. Malá ložnice funguje nejlépe, když má každá věc své místo a když podlaha zůstane co nejvíc volná. To je celý trik: nezvětšovat místnost, ale ubrat překážky.

Vlhkost je nepřítel číslo jedna. Pokud podestýlka při zmáčknutí v ruce drží tvar, je mokrá a musí ven. Slepicím nevadí chlad, vadí jim stání ve studené mokřině. Proto pravidelně kontrolujeme odtok vody ze kurníku, těsnost střechy a větrání, které odvede páru, ale neprůvan. Na podlahu pod podestýlku se osvědčila tenká drenážní vrstva z hrubšího materiálu, která oddělí vlhko od povrchu.

Výsledkem není jen hezčí graf. Rovná historie zkracuje hledání chyb, zjednodušuje zpětné nasazení a snižuje počet překvapení při sloučení. Týmy, které rebase zavedly opatrně a s jasnými pravidly, přestanou řešit, kdo co sloučil, a začnou řešit skutečnou práci.

Základní postup je krátký. Větev aktualizujete tak, že si přepnete na hlavní větev, stáhnete změny a pak přepnete zpět na svou práci. Následně spustíte rebase proti hlavní větvi. Git přehraje vaše commity na nový vrchol. Konflikty řešíte průběžně, commit po commitu, ne najednou v jednom velkém sloučení. Po dokončení vypadá historie jako rovná čára a každý commit má jasného autora i důvod.

Každý tým dřív nebo později narazí na historii, ve které se to hemží merge commity. Vypadá to jako neškodný detail, dokud někdo nepotřebuje zjistit, která změna způsobila regresi. V tu chvíli se z jednoduchého dotazu stane hodinové klikání po grafu. Řešením je rebase na hlavní větvi místo pravidelného merge. Není to magie, jen jiný způsob, jak se změny dostávají do hlavní linie.

V týmu se vyplatí nastavit pravidla předem. Hlavní větev chraňte tak, aby do ní nešlo pushnout přímo. Povolte pouze sloučení přes požadavek na změnu, kde se historie kontroluje. Domluvte se, že feature větev se před sloučením vždy rebasuje, ale jen dokud není sdílená. Pokud někdo potřebuje vidět původní vývoj, ať si ponechá lokální větev nebo záložní tag. Nic z toho nezdržuje, jen to brání zbytečným opravám.

Pro udržení pořádku pomáhá i drobná kázeň. Commity dělejte malé a s výstižnou zprávou, ať se při rebase snadno řeší konflikty. Před rebasem si udělejte záložní větev, abyste mohli rychle couvnout. Po rebase ověřte, že všechny testy procházejí, protože přehrání může odhalit skrytou závislost mezi commity. A když se něco pokazí, použijte reflog, který drží stopu i po přepsání historie.

Kde se to nejčastěji pokazí První past je rebase už pushnuté větve, na které pracuje někdo jiný. Přepsané commity zmizí z historie ostatních a jejich lokální kopie se rozejdou. Pokud na větvi spolupracujete, rebase patří jen na věci, které ještě nikdo nestáhl. Druhá past je force push bez ochrany. Vždy použijte variantu, která odmítne přepsat cizí práci, místo slepého přepsání větve. Třetí past je hromadné řešení konfliktů v jednom kroku. Radši dokončete rebase po menších částech a po každém kroku spusťte testy.