Причин много
1. Прямой push в общие ветки может быть запрещен.
2. Когда в проекте есть план релизов, задачи должны выполняться в отдельных ветках, чтобы можно было собрать версию с утвержденными фичами, а не со всем, что есть в мастере.
3. Даже если ничего такого нет, все-равно у меня правило, что изменения делаются в отдельной ветке с номером таска. Чтобы можно было выпилить ветку, если что-то пошло не так. Раз в год незаряженное ружье стреляет в пятницу вечером.
Коммитить нужно в ветке таска, и через мердж-реквест с code review отправлять в мастер.
А если это вопрос про ветку задачи, над которой работает несколько человек - тут пофиг, да.