> я так понимаю вы уверены, что говорите о распределённой системе контроля версий? Не обязательно распределенная vcs. Хоть централизованная, хоть просто набор патчей - в данном контексте конкретная технология большой роли не играет.
> ну или вы хотя бы уверены, что такое основная ветка?
Я так понимаю, вы тонко намекаете, что в процессе разработки могло существовать множество веток и коммитов, которые перед вливанием в основную ветку "почистили/укрупнили" сделав, по сути, один большой патч и поэтому они "не считаются" и их, как бы, не было? С таким подходом - да, можно всегда сделать так, чтобы на одно изменение всегда был один коммит - главное определить какие коммиты "считаются", а какие нет. Только я не стал бы так однозначно утверждать, что "кто так делает - молодец, а кто не делает - идиот".