Když chcete historii bez merge commitů, zaveďte rebase
Proč jsou některé krátery hluboké a jiné mělk
Barvy a světlo dělají víc než metry. Tmavé stěny a těžký nábytek strop srazí, světlé povrchy ho nadzvednou. To neznamená, že musí být všechno bílé. Stačí, když velké plochy — stěny, postel, podlaha — drží podobný světlý tón a jedna menší plocha dostane výraznou barvu. Zrcadlo postavené kolmo ke oknu nezdvojnásobí prostor, ale přivede do místnosti denní světlo, které by jinak zůstalo jen u okna. Závěsy veďte až ke stropu a nechte je splývat k podlaze; krátké závěsy u okna místnost opticky rozpůlí.
Poslední věc: rebase není magie. Pokud ji používáte na veřejné větvi, ostatní o ni přijdou. Vždy se domluvte, které větve jsou soukromé (vaše feature branches) a které veřejné (main, develop). U veřejných větví používejte merge, u soukromých rebase. Tím dosáhnete čisté historie bez merge commitů, aniž byste si rozbili repozitář.
Častou chybou je rebasovat příliš mnoho commitů najednou. Pokud máte větev s dvaceti commity a řešíte konflikt v každém z nich, něco je špatně. Lepší je rebasovat průběžně – klidně každý den. Tím se konflikty zmenší a vyhnete se peklu při slučování. Další častá chyba: zapomenutý git push --force-with-lease po rebasu. Bez něj server odmítne push, protože historie není fast-forward. Někteří vývojáři pak zpanikaří a začnou větev mazat a vytvářet znovu. To je zbytečné – stačí force push s lease.
Merge commity vznikají pokaždé, když do hlavní větve sloučíte jinou větev pomocí git merge. Pro mnoho týmů je to zbytečný šum v historii. Řešením je rebase – přeskládání vašich commitů na aktuální vrchol cílové větve. Místo git merge feature uděláte git rebase main a poté git merge --ff-only feature. Tím se vytvoří lineární historie bez merge commitů. Funguje to spolehlivě, pokud se rebase používá důsledně a všichni vědí, co to znamená.
Kontrolujte zásoby alespoň dvakrát ročně. Projděte lahvičky, zkontrolujte vůni, barvu a těsnost uzávěru. Co je otevřené déle než rok, spotřebujte přednostně. Nové výluhy dávejte dozadu, starší dopředu. Pokud si nejste jistí, zda je obsah v pořádku, raději ho nepoužívejte na kůži ani vnitřně. Uchovávejte je mimo dosah dětí a domácích zvířat. Správné skladování není složité, ale vyžaduje důslednost. Když dodržíte tmu, chlad, sucho a těsné uzávěry, vaše bylinkové přípravky vydrží výrazně déle a zachovají si sílu.
Nejčastější chyba není v receptu, ale v trpělivosti. Lidé nasypou pistácie, zapnou mixér na plný výkon a čekají hladkou hmotu. Dostanou olej oddělený od pevných částí. Druhá častá chyba je příliš mnoho cukru. Krém pak chutná jako cukrová poleva a pistácie v něm zmizí. Třetí chybou je studené máslo přímo z lednice. To se v mixéru nerozpojí, ale rozseká na kousky, které v krému zůstanou.
Jak rebase bez merge commitů zavést do praxe Základem je pravidlo: nikdy nerebasujte commity, které už někdo jiný stáhl do svého repozitáře. Ve sdílené větvi (např. main) se rebase nedělá. Před každým rebasem si stáhněte aktuální stav: git fetch origin. Pak přepněte na svou větev a spusťte git rebase origin/main. Pokud narazíte na konflikt, vyřešte ho, přidejte soubory přes git add a pokračujte git rebase --continue. Po úspěšném rebasu vytlačte větev na server silou: git push --force-with-lease. Tento přepínač je bezpečnější než --force, protože odmítne push, pokud někdo mezitím na větev něco poslal.
Pro týmovou spolupráci je klíčové nastavit ochranu větve. Na serveru (GitHub, GitLab, Bitbucket) zakážete přímé push do main a povolíte pouze pull requesty. V nastavení ochrany zapněte možnost „Require linear history". Tím se merge commity do hlavní větve vůbec nedostanou – server odmítne jakýkoli merge commit. Vývojáři pak musí rebasovat. Někteří to nesnáší, protože se při řešení konfliktů cítí nejistě. Proto je dobré mít v týmu jednoho člověka, který s rebasem pomůže, a napsat krátký návod do README.
Nejdůležitější je zavést pravidlo, kolik kusů může být v předsíni současně. Pokud máte v předsíni víc než dva páry bot na osobu a dvě bundy, zbytek patří jinam. Jednou za týden projděte obsah a vraťte věci, které tam nepatří. Vyhnete se tak hromadění, které malou chodbu rychle promění v nepořádek. Malý prostor není problém, pokud do něj dáváte jen to, co skutečně používáte každý den.
Bundy potřebují prostor, aby mohly schnout. Pokud je namačkáte do sebe, zůstanou vlhké a začnou zapáchat. Řešením je věšák s dostatečným rozestupem háčků nebo dvě tyče nad sebou, kdy na horní dáváte kabáty a na spodní kratší bundy. Do úzké předsíně se hodí věšák na zeď s výsuvnými rameny, který se dá sklopit, když není potřeba. U vchodových dveří se vyplatí nechat jednu volnou plochu na mokré boty a mokré bundy, které přijdou z deště. Podložka nebo miska pod boty zachytí vodu a bláto, ale musí se pravidelně vylévat a čistit, jinak se z ní stane zdroj zápachu.