convcommit is a lightweight command-line tool that helps enforce Conventional Commits in your Git workflow. It provides an interactive way to structure your commit messages according to best practices, improving readability and automation compatibility.
- Interactive commit message selection
- Supports all Conventional Commit types
- Optionally commits all changes (
-a/--allflag) - Supports automatic push (
-p/--pushflag) - Ensures structured and meaningful Git commit messages
- Helps maintain a clean and consistent commit history
You can install convcommit using Mush:
mush install convcommitAlternatively, you can clone the repository and use it directly:
git clone https://github.com/yourusername/convcommit.git
cd convcommit
chmod +x convcommitRun convcommit to start an interactive commit message selection process:
convcommit-a,--all→ Automatically add all changes before committing.-p,--push→ Push the commit to the remote repository after committing.
convcommit -a -pThis will:
- Prompt you to select a commit type, scope, and message.
- Commit all changes using the selected message.
- Push the commit to the remote repository.
By default, convcommit stores available commit types and scopes in a .convcommit file. The first time you run it, this file will be created if it does not exist.
You can modify .convcommit to customize commit types, scopes, and message templates.
- Keeps your commit messages standardized.
- Makes it easier to generate changelogs and automate release processes.
- Helps maintain a clean and readable Git history.
We welcome contributions! Feel free to fork the repository, submit pull requests, or open issues for any improvements or bug fixes.
This project is licensed under the MIT License.