A Go tool to enforce consistent git commit message patterns using configurable regex matchers.
Gommit is a Go-based tool that enforces consistent git commit message patterns across a codebase. It allows teams to define custom regex matchers in a configuration file and validate commits against those rules, ensuring all messages follow a standardized format. This helps maintain a clean, readable commit history and improves collaboration in version-controlled projects.
Development teams and DevOps engineers who want to enforce commit message conventions in their git workflows, especially those using CI/CD pipelines or git hooks for quality assurance.
Developers choose Gommit for its flexibility in defining custom commit message patterns, its seamless integration with existing tools like git hooks and CI services, and its lightweight, single-binary design that makes it easy to deploy and run.
Enforce git message commit consistency
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports complex regex features like lookaheads and named groups, allowing precise matching of commit message formats as described in the matchers section.
Offers commands to validate single commits, commit ranges, or raw messages, making it versatile for hooks, CI, and manual checks as shown in the usage section.
Includes ready-to-use examples for Travis CI and CircleCI, reducing setup time and effort for common CI environments.
Distributed as a single binary with no dependencies, making it easy to download and run on various systems from the releases page.
The 'check commit' command requires full commit IDs, which is cumbersome compared to git's standard short IDs, as noted in the documentation.
Users must write and maintain custom regex patterns in the .gommit.toml file, which can be error-prone and requires regex expertise, adding overhead.
Only one third-party library (gommitjs for Nodejs) is mentioned, indicating a small community and fewer integrations or extensions available.