Зачем нужна stage area в Git?
Думаю, ответ немного банален — чтобы можно было выбирать, какие файлы включать в коммит. 

Из практики — чаще всего случается git commit -am "...", уже до автоматизма дошло. Т.е. смотрю статус, если есть новые — добавляю, и затем коммит с флагом -a. Но это у меня. Т.к. в моем случае git по большей мере нужен для коммандной работы — сам контроль версий не особо использую. Если нужно балансировать между версиями — используются бранчи.

Тем не менее, если действительно относиться к каждому коммиту, как к стабильной версии для продакшна, то может понадобиться именно такой подход. В этом случае как раз таки staging area и играет роль черновика, из которого можно включить те или иные файлы.

Опять таки, из практики — порой удобно бывает закоммитить определенный файл в случае с хотфиксами.
Свободное формирование коммита так, как нам этого хочится, а не как диктует vcs?