получается коммиты нужны для того, чтобы обновлять проект, улучшать его и иметь возможность откатиться до предыдущей версии. Зачем ветки тогда?
Ну вот я делаю задачу на работе в своей ветке, другой разработчик в своей, потом этим ветки мержатся в мейн