Pushnutí vadného commitu je chyba, ne výhoda. Zaneřádím historii projektu a hlavně tím otravuji život i ostatním vývojářům, kteří si vadnou verzi stahnou a budou se s tím muset potýkat. Před pushem je potřeba se rozmyslet, zda je to opravdu správně - třeba zrovna to heslo v commitu vyrobeném před několika hodinami, po kterém následuje deset dalších. Pak už se historie opravit nedá (nebo jen pracně). V git rebase commit vyhodím/opravím.
Pěkná práce s commity je při přispívání do kernelu. Správci dostanou celý commit (např. přes git-send-mail), zrevidují jej, skriptem (zřejmě automaticky spouštěným) zkontrolují štábní kulturu a když je to v pořádku, přidají jej rovnou z mailového klienta do svého repozitáře, např. do některé své větve na git.kernel.org. Pak ve vhodný čas Linusovi jen pošlou commity, které chtějí mergnout do nové verze kernelu. Commity si rozdělují na kritické, které chtějí do ostré verze dostat co nejdříve, a normální, které počkají na další otevřené okno pro mergování do nové verze. Proto musí být co nejmenší a musí řešit jen jeden problém, aby se s nimi dalo pracovat jako s ucelenými bloky dobře popsaných změn, které jsou natolik jednoduché, že je lze snadno projít a zkontrolovat.