Как правило, сборки запускаются через определенный промежуток времени, например 3 утра каждый день. Там можно разместить некоторую логику, чтобы увидеть, есть ли изменения, тогда только собирать проект, но обычно они не проверяются, и сборки производятся каждый день (ночные сборки)
Что касается вашего предложения, которое является хорошим, я бы сказал, что не представляется возможным запустить сборку при каждом коммите. Много раз разработчик не фиксирует свои изменения за один раз и предпочитает дополнительные проверки. Кроме того, это дает некоторое спокойствие, чтобы знать, когда начнется процесс сборки, так что вы по крайней мере сможете привести в порядок вещи в случае неправильных фиксаций. С вашим предложением неправильный коммит приводит к неправильной сборке.