The changelog is generated by pbr automatically when you run
python setup.py sdist bdist_wheel
So when you are ready for a new release, run
python setup.py sdist bdist_wheel
git add Changelog && git commit -m "Updated ChangeLog for version XXXX"
git tag -a vXXXX -m "Release version XXX"
git push origin --tags
Then release to pypi
twine check dist/*
twine upload dist/*