https://github.com/pacemakerx/commitcop
Commit Cop is a modular, cross-platform CLI tool for enforcing clean, structured commit messages in Git repositories. It automates commit message validation via Git hooks and provides a user-friendly interface for configuration and manual validation.
https://github.com/pacemakerx/commitcop
automation cli github-commits github-config python
Last synced: 9 months ago
JSON representation
Commit Cop is a modular, cross-platform CLI tool for enforcing clean, structured commit messages in Git repositories. It automates commit message validation via Git hooks and provides a user-friendly interface for configuration and manual validation.
- Host: GitHub
- URL: https://github.com/pacemakerx/commitcop
- Owner: PacemakerX
- Created: 2025-07-13T09:34:11.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2025-07-13T10:13:50.000Z (10 months ago)
- Last Synced: 2025-07-13T11:01:38.471Z (10 months ago)
- Topics: automation, cli, github-commits, github-config, python
- Language: Python
- Homepage:
- Size: 18.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Commit Cop (ccop)
**Commit Cop** is a modular, cross-platform CLI tool for enforcing clean, structured commit messages in Git repositories. It automates commit message validation via Git hooks and provides a user-friendly interface for configuration and manual validation.
[](#)
[](#)
[](#)
[](#)
[](#)
[](#)
## 🚀 Features
- **Commit Message Enforcement**: Installs a `commit-msg` Git hook to validate commit messages automatically.
- **Manual Validation**: Validate commit messages manually from the CLI.
- **Configurable Rules**: Easily customize allowed commit types and scopes via YAML config or CLI commands.
- **Modular & Extensible**: Clean, object-oriented codebase for easy extension.
- **Cross-Platform**: Works on Linux, Windows, and macOS.
- **Interactive CLI**: Simple, intuitive command-line interface.
## 🛠️ Tech Stack
### Core Technologies
- **Python**: Main language for CLI and hook logic.
- **Click**: For building the interactive CLI.
- **YAML**: Configuration format for commit rules.
- **Git Hooks**: Integration with Git for commit enforcement.
### Tools & Environment
- **Visual Studio Code**: Recommended editor with GitHub Copilot integration.
- **Git**: Required for hook installation and commit validation.
- **Windows, Linux, macOS**: Supported operating systems.
## ❓ Why Commit Cop?
Maintaining high-quality commit messages is crucial for collaboration and project history. **Commit Cop** helps teams enforce standards, making project history readable and actionable:
- Prevents messy or ambiguous commit logs.
- Customizable to fit any team's workflow.
- Easy to install, configure, and use.
## Installation
Download the latest release from GitHub and install via pip:
```sh
pip install git+https://github.com/PacemakerX/commitCop.git
```
### Via Git
Install directly from the GitHub repo using pip:
```bash
pip install git+https://github.com/PacemaekrX/commitCop.git
```
Via Binary
Download the prebuilt binary from the Releases section below:
```bash
chmod +x ccop
./ccop --help
```
You can optionally move it to a directory in your PATH:
```bash
mv ccop /usr/local/bin/
```
## Feel free to connect with me!