The staging area changed the way I work for the better. When I develop something, a file can be at the same time “not modified yet,” in progress where I can carefully accept or reject the modifications, and partially done when the parts have been confirmed and added to the staging area.
Once nothing is “in progress” anymore, I know that my future commit is almost perfect and I can quickly review my stuff before committing. It’s faster and more safe than other tools.
Back when Nginx started, Apache was the only alternative and a big pain in the ass. That’s how it became popular.