| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
TGIT is an AI-powered Git CLI for commit messages, changelog generation, and semantic versioning.
| Ecosystem | File | Notes |
|---|---|---|
| Node / npm | package.json | "version": "x.y.z" |
| Python | pyproject.toml | [project].version, [tool.poetry].version, [tool.flit.metadata].version, [tool.setuptools] |
| Python | __about__.py | __version__ = "x.y.z" — auto-discovered via [tool.hatch.version].path, [tool.hatch.build.targets.wheel].packages, or [project].name (also checks src/<pkg>/) |
| Python | __init__.py | __version__ = "x.y.z" — only files that actually define __version__ are touched, located in the same package dirs as __about__.py |
| Python | setup.py | version="x.y.z" |
| Rust | Cargo.toml | version inside the [package] section only |
| Gradle (Kotlin DSL) | build.gradle.kts | version = "x.y.z" |
| Dart / Flutter | pubspec.yaml | version: x.y.z (supports +build and quoted values) |
| Helm | Chart.yaml | version: x.y.z (apiVersion and appVersion are left untouched) |
| Generic | VERSION, VERSION.txt | Plain-text file containing only the version string |
If no version file is found, TGIT falls back to the latest v* git tag.
In recursive mode (default), TGIT walks the working tree to bump every detected file at once — useful for monorepos. Use --no-recursive to limit updates to the project root.
uv tool install tgitpipx install tgitpip install tgit# Configure TGIT
tgit settings
# Generate an AI-powered commit message from staged changes
tgit commit
# Generate changelog for current version
tgit changelog
# Bump version and generate changelog
tgit versionThe recommended way to configure TGIT is through the interactive settings command:
# Interactive configuration - recommended!
tgit settingsThis will guide you through setting up:
Alternatively, you can manually create a .tgit.yaml file in your project root or ~/.tgit.yaml for global settings:
apiKey: "your-openai-api-key"
model: "gpt-5-mini"
reasoning_effort: "medium"
commit:
emoji: true
types:
- type: "feat"
emoji: "✨"
- type: "fix"
emoji: "🐛"# AI-powered commit
tgit commit
# Breaking change commit
tgit commit --breaking "remove deprecated api"# Generate changelog for current version
tgit changelog
# Generate changelog from specific version
tgit changelog --from v1.0.0
# Generate changelog to specific version
tgit changelog --to v2.0.0# Interactive version bump
tgit version
# Limit to root only (disable recursive bump)
tgit version --no-recursive
# Bump specific version type
tgit version --patch
tgit version --minor
tgit version --major
# Pre-release version
tgit version --prerelease alpha# Interactive settings configuration
tgit settings
# Show current settings
tgit settings --showWhen configuring workspace settings interactively, TGIT shows the effective values that are currently in use. Leave a string field empty to inherit from the global/default value, or choose Follow global/default for boolean settings.
You can also override the default reasoning effort used for AI commit generation with reasoning_effort. Use auto in the non-interactive settings command, or leave the field empty in interactive settings, to omit the field and fall back to the model-specific default. Those defaults vary by model family, for example gpt-5 defaults to medium, while gpt-5.4-mini defaults to none.
# Clone the repository
git clone https://github.com/Jannchie/tgit.git
cd tgit
# Install dependencies
uv sync# Run all tests
./scripts/test.sh
# Run with coverage
./scripts/test.sh --coverage 90
# Run specific test types
./scripts/test.sh --unit
./scripts/test.sh --integration# Run linting
uv run ruff check .
# Run formatting
uv run ruff format .
# Build package
uv buildThis project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
If you encounter any problems or have suggestions, please open an issue on GitHub.
| Back | FazBrowse Home | New Git URL |