I'd also add commitizen to that list. It walks you through the steps, at commit, to get the message correct without having to memorise the syntax.
Really great when used in combination with the above tools.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.