Most repositories tend to be pretty messy when it comes to commit messages, some companies have guidelines and force some structure but what are the solutions that involve best practices? We have two approaches with slightly different benefits. Conventional commits is a well structured approach, with a set of defined categories that allows us to easily build a descriptive changelog. You can add commitlint to make sure the repository adheres to the structure or use commitzen to guide u through each step. Gitmoji is a graphical approach, yoy can add a hook to the commit command (similar to commitzen) which guides you through the steps to have a complete message.