gitmit

command module
v0.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 30, 2025 License: MIT Imports: 3 Imported by: 0

README

Gitmit

Go Version Go Report Card

Gitmit - Smart Git Commit Message Generator

🧠 A lightweight CLI tool that analyzes your staged changes and suggests professional commit messages following Conventional Commits format.

Features

  • Intelligent Analysis: Analyzes git status and diff to understand your changes
  • Conventional Commits: Follows the Conventional Commits specification
  • Multiple Commit Types: Supports feat, fix, refactor, chore, test, docs, style, perf, ci, build, security, config, deploy, revert, and wip
  • Interactive Mode: Customize commit messages with an interactive prompt
  • Quick Commits: Fast commits without interaction
  • Smart Analysis: Advanced commit history analysis and insights
  • Amend Support: Easily amend previous commits with smart suggestions
  • Custom Messages: Use custom messages with scope and breaking change support
  • Zero Configuration: Works out of the box
  • Lightning Fast: Complete offline operation
  • OpenAI Integration: Optional AI-powered commit message generation

Installation

From Releases

Download the latest release for your platform from the releases page.

From Source
git clone https://github.com/andev0x/gitmit.git
cd gitmit
go build -o gitmit
./gitmit

Usage

Basic Usage
# Stage your changes
git add .

# Generate and commit with smart message
gitmit
Command Options
# Show suggested message without committing
gitmit --dry-run

# Show detailed analysis
gitmit --verbose

# Quick commit without interaction
gitmit --quick

# Use OpenAI for enhanced message generation
gitmit --openai

# Amend the last commit
gitmit --amend

# Force interactive mode
gitmit --interactive

# Custom commit message
gitmit --message "your custom message"

# Specify commit scope
gitmit --scope "api"

# Mark as breaking change
gitmit --breaking
Smart Analysis
# Analyze commit history and get insights
gitmit analyze

# Get smart commit suggestions
gitmit smart
Propose Mode
# Propose commit message from diff
git diff --cached | gitmit propose

Commit Types

Gitmit automatically detects and suggests appropriate commit types:

  • feat: New features
  • fix: Bug fixes
  • refactor: Code refactoring
  • chore: Maintenance tasks
  • test: Adding or updating tests
  • docs: Documentation changes
  • style: Code style changes (formatting, etc.)
  • perf: Performance improvements
  • ci: CI/CD changes
  • build: Build system changes
  • security: Security improvements
  • config: Configuration changes
  • deploy: Deployment changes
  • revert: Reverting previous commits
  • wip: Work in progress

Examples

Feature Addition
git add new-feature.js
gitmit
# Suggests: feat: add new-feature.js
Bug Fix
git add bug-fix.js
gitmit
# Suggests: fix: resolve issue in bug-fix.js
Documentation Update
git add README.md
gitmit
# Suggests: docs: update README
Quick Commit
git add .
gitmit --quick
# Commits immediately with auto-generated message
Custom Message with Scope
git add .
gitmit --message "improve performance" --scope "api" --breaking
# Creates: feat(api)!: improve performance
Amend Previous Commit
git add additional-changes.js
gitmit --amend
# Amends the last commit with new changes

Smart Analysis Features

Commit History Analysis
gitmit analyze

Provides insights on:

  • Commit patterns and trends
  • Most active files and directories
  • Commit type distribution
  • Development velocity
  • Potential improvements
Smart Suggestions
gitmit smart

Offers:

  • Multiple commit suggestions with confidence levels
  • Context-aware reasoning
  • File operation analysis
  • Scope detection
  • Breaking change identification

Configuration

Gitmit works out of the box with zero configuration. However, you can enhance it with:

OpenAI Integration

Set your OpenAI API key for enhanced commit message generation:

export OPENAI_API_KEY="your-api-key"
gitmit --openai

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for details.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Roadmap

  • Git hooks integration
  • Team commit templates
  • Commit message validation
  • Integration with issue trackers
  • Multi-language support
  • Commit message templates
  • Branch-based suggestions
  • Commit message history learning

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
llm

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL