Changelog generation, manually or automatically? What is recommended?

I was reading what is a changelog in and says that we shouldn’t drop our git logs for the creationg of this file, but I see a lot of projects do it like the Angular framework repository, so I am wondering what is the recommended strategy for doing this, what kind of users are we aiming for or the special cases in which we would like to drop our git logs in this file instead of writing it down ourselves.

I want to point out that I am new to this type of workflow as the company I am currently working for never used a changelog and VCS and I am trying to organize better the projects we develop.