Прелесть систем DVCS в том, что вы можете иметь оба , потому что в DVCS в отличие от CVCS публикация ортогональна фиксации .В CVCS каждый коммит публикуется автоматически, но в DVCS коммиты публикуются только тогда, когда они выдвинуты .
Итак, коммит небольшими шагами, нотолько опубликовать работающие функции.
Если вас беспокоит загрязнение вашей истории, то вы можете переписать ее.Возможно, вы слышали, что переписывание истории - это зло, но это не так: только переписывание опубликовано история - это зло, но опять же, поскольку публикация и фиксация отличаются, вы можете переписать свою неопубликованную историю перед ее публикацией.
Так работает, например, разработка Linux.Линус Торвальдс очень заботится о сохранении истории в чистоте.В одном из самых ранних электронных писем о Git он сказал, что опубликованная история должна выглядеть не так, как вы на самом деле разработали ее, а как вы разработали бы ее , если бы вы былиВсезнающий, мог заглядывать в будущее и никогда не совершал ошибок.
Теперь Linux немного особенный: в него входят коммиты со скоростью 1 коммит каждые 11 минут по 24 часа в сутки, 7 днейнеделю, 365 дней в году, включая ночи, выходные, праздники и стихийные бедствия.И этот показатель все еще увеличивается.Только представьте, сколько будет коммитов, если каждая опечатка и брейнфарт приведут к коммиту.
Но сами разработчики в своих личных репозиториях фиксируют, как часто хотят.