An open API service indexing awesome lists of open source software.

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.

Awesome Lists containing this project

README

          


Header

# 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.

[![Python](https://img.shields.io/badge/Python-3776AB?logo=python&logoColor=white)](#)
[![Cross Platform](https://img.shields.io/badge/Cross--Platform-00b894?logo=windows&logoColor=white&label=OS)](#)
[![CLI Tool](https://img.shields.io/badge/CLI%20Tool-4B8BBE?logo=terminal&logoColor=white)](#)
[![Git](https://img.shields.io/badge/Git-F05032?logo=git&logoColor=white)](#)
[![VS Code](https://custom-icon-badges.demolab.com/badge/VS%20Code-0078d7.svg?logo=visualstudiocode&logoColor=white)](#)
[![MIT License](https://img.shields.io/badge/License-MIT-green.svg)](#)

## 🚀 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!



Gmail Badge


LinkedIn Badge