Name | tgit JSON |
Version |
0.22.0
JSON |
| download |
home_page | None |
Summary | Tool for Git Interaction Temptation (tgit): An elegant CLI tool that simplifies and streamlines your Git workflow, making version control a breeze. |
upload_time | 2025-07-15 16:38:56 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.11 |
license | None |
keywords |
changelog
commit
git
tool
version
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# 🚀 TGIT - Tool for Git Interaction Temptation
[](https://codetime.dev)
[](https://badge.fury.io/py/tgit)
[](https://www.python.org/downloads/)
[](https://opensource.org/licenses/MIT)
An elegant CLI tool that simplifies and streamlines your Git workflow with AI-powered commit messages, automated changelog generation, and intelligent version management.
## ✨ Features
### 🤖 AI-Powered Commits
- Generate conventional commit messages automatically using OpenAI
- Smart diff analysis that focuses on meaningful changes
- Support for custom commit types and emojis
- Breaking change detection
### 📝 Automated Changelog
- Generate beautiful, structured changelogs from conventional commits
- Group commits by type with emoji categorization
- Support for multiple output formats
- Automatic git remote URL detection for commit links
### 🔢 Intelligent Version Management
- Semantic versioning with pre-release support
- Support for multiple project files (package.json, pyproject.toml, Cargo.toml, etc.)
- Automatic version bumping based on commit history
- Git tagging integration
### ⚙️ Flexible Configuration
- Global and workspace-specific settings
- YAML-based configuration files
- Interactive settings management
- Customizable commit types and emojis
## 🚀 Quick Start
### Installation
```bash
pip install tgit
```
### Basic Usage
```bash
# AI-powered commit with automatic message generation
tgit commit
# Generate changelog for current version
tgit changelog
# Bump version and generate changelog
tgit version
# Interactive settings configuration
tgit settings
```
### Configuration
The easiest way to configure TGIT is through the interactive settings command:
```bash
# Interactive configuration - recommended!
tgit settings
```
This will guide you through setting up:
- OpenAI API key for AI-powered commits
- Preferred AI model (gpt-4, gpt-3.5-turbo, etc.)
- Commit emoji preferences
- Custom commit types
Alternatively, you can manually create a `.tgit.yaml` file in your project root or `~/.tgit.yaml` for global settings:
```yaml
apiKey: "your-openai-api-key"
model: "gpt-4"
commit:
emoji: true
types:
- type: "feat"
emoji: "✨"
- type: "fix"
emoji: "🐛"
```
## 📖 Commands
### Commit
```bash
# AI-powered commit
tgit commit
# Breaking change commit
tgit commit --breaking "remove deprecated api"
```
### Changelog
```bash
# 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
```
### Version
```bash
# Interactive version bump
tgit version
# Bump specific version type
tgit version --patch
tgit version --minor
tgit version --major
# Pre-release version
tgit version --prerelease alpha
```
### Settings
```bash
# Interactive settings configuration
tgit settings
# Show current settings
tgit settings --show
```
## 🛠️ Development
### Setup
```bash
# Clone the repository
git clone https://github.com/Jannchie/tgit.git
cd tgit
# Install with uv
uv pip install -e .
# Install development dependencies
uv pip install -e ".[dev]"
```
### Testing
```bash
# 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
```
### Code Quality
```bash
# Run linting
ruff check .
# Run formatting
ruff format .
# Build package
uv build
```
## 📄 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## 🤝 Contributing
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.
## 📞 Support
If you encounter any problems or have suggestions, please [open an issue](https://github.com/Jannchie/tgit/issues) on GitHub.
Raw data
{
"_id": null,
"home_page": null,
"name": "tgit",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": null,
"keywords": "changelog, commit, git, tool, version",
"author": null,
"author_email": "Jannchie <jannchie@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/e2/68/c616408147c34359a962743a11ee7bf9b2aa4de3f7c12cc6e7860db014f4/tgit-0.22.0.tar.gz",
"platform": null,
"description": "# \ud83d\ude80 TGIT - Tool for Git Interaction Temptation\n\n[](https://codetime.dev)\n[](https://badge.fury.io/py/tgit)\n[](https://www.python.org/downloads/)\n[](https://opensource.org/licenses/MIT)\n\nAn elegant CLI tool that simplifies and streamlines your Git workflow with AI-powered commit messages, automated changelog generation, and intelligent version management.\n\n## \u2728 Features\n\n### \ud83e\udd16 AI-Powered Commits\n\n- Generate conventional commit messages automatically using OpenAI\n- Smart diff analysis that focuses on meaningful changes\n- Support for custom commit types and emojis\n- Breaking change detection\n\n### \ud83d\udcdd Automated Changelog\n\n- Generate beautiful, structured changelogs from conventional commits\n- Group commits by type with emoji categorization\n- Support for multiple output formats\n- Automatic git remote URL detection for commit links\n\n### \ud83d\udd22 Intelligent Version Management\n\n- Semantic versioning with pre-release support\n- Support for multiple project files (package.json, pyproject.toml, Cargo.toml, etc.)\n- Automatic version bumping based on commit history\n- Git tagging integration\n\n### \u2699\ufe0f Flexible Configuration\n\n- Global and workspace-specific settings\n- YAML-based configuration files\n- Interactive settings management\n- Customizable commit types and emojis\n\n## \ud83d\ude80 Quick Start\n\n### Installation\n\n```bash\npip install tgit\n```\n\n### Basic Usage\n\n```bash\n# AI-powered commit with automatic message generation\ntgit commit\n\n# Generate changelog for current version\ntgit changelog\n\n# Bump version and generate changelog\ntgit version\n\n# Interactive settings configuration\ntgit settings\n```\n\n### Configuration\n\nThe easiest way to configure TGIT is through the interactive settings command:\n\n```bash\n# Interactive configuration - recommended!\ntgit settings\n```\n\nThis will guide you through setting up:\n\n- OpenAI API key for AI-powered commits\n- Preferred AI model (gpt-4, gpt-3.5-turbo, etc.)\n- Commit emoji preferences\n- Custom commit types\n\nAlternatively, you can manually create a `.tgit.yaml` file in your project root or `~/.tgit.yaml` for global settings:\n\n```yaml\napiKey: \"your-openai-api-key\"\nmodel: \"gpt-4\"\ncommit:\n emoji: true\n types:\n - type: \"feat\"\n emoji: \"\u2728\"\n - type: \"fix\"\n emoji: \"\ud83d\udc1b\"\n```\n\n## \ud83d\udcd6 Commands\n\n### Commit\n\n```bash\n# AI-powered commit\ntgit commit \n\n# Breaking change commit\ntgit commit --breaking \"remove deprecated api\"\n```\n\n### Changelog\n\n```bash\n# Generate changelog for current version\ntgit changelog\n\n# Generate changelog from specific version\ntgit changelog --from v1.0.0\n\n# Generate changelog to specific version\ntgit changelog --to v2.0.0\n```\n\n### Version\n\n```bash\n# Interactive version bump\ntgit version\n\n# Bump specific version type\ntgit version --patch\ntgit version --minor\ntgit version --major\n\n# Pre-release version\ntgit version --prerelease alpha\n```\n\n### Settings\n\n```bash\n# Interactive settings configuration\ntgit settings\n\n# Show current settings\ntgit settings --show\n```\n\n## \ud83d\udee0\ufe0f Development\n\n### Setup\n\n```bash\n# Clone the repository\ngit clone https://github.com/Jannchie/tgit.git\ncd tgit\n\n# Install with uv\nuv pip install -e .\n\n# Install development dependencies\nuv pip install -e \".[dev]\"\n```\n\n### Testing\n\n```bash\n# Run all tests\n./scripts/test.sh\n\n# Run with coverage\n./scripts/test.sh --coverage 90\n\n# Run specific test types\n./scripts/test.sh --unit\n./scripts/test.sh --integration\n```\n\n### Code Quality\n\n```bash\n# Run linting\nruff check .\n\n# Run formatting\nruff format .\n\n# Build package\nuv build\n```\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## \ud83e\udd1d Contributing\n\nContributions 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.\n\n## \ud83d\udcde Support\n\nIf you encounter any problems or have suggestions, please [open an issue](https://github.com/Jannchie/tgit/issues) on GitHub.\n",
"bugtrack_url": null,
"license": null,
"summary": "Tool for Git Interaction Temptation (tgit): An elegant CLI tool that simplifies and streamlines your Git workflow, making version control a breeze.",
"version": "0.22.0",
"project_urls": null,
"split_keywords": [
"changelog",
" commit",
" git",
" tool",
" version"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "302ad7515142d04482e8d02a9bed266640d613eaebac379bb48de38e888c6bf1",
"md5": "8e0d41651cf577601c70dd8c7c01e1f7",
"sha256": "a6aa59253cb036cfc2b48307f5dee9537a35ed8ffb58fc6e1929aeefa4d4a17c"
},
"downloads": -1,
"filename": "tgit-0.22.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8e0d41651cf577601c70dd8c7c01e1f7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 26932,
"upload_time": "2025-07-15T16:38:54",
"upload_time_iso_8601": "2025-07-15T16:38:54.833233Z",
"url": "https://files.pythonhosted.org/packages/30/2a/d7515142d04482e8d02a9bed266640d613eaebac379bb48de38e888c6bf1/tgit-0.22.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e268c616408147c34359a962743a11ee7bf9b2aa4de3f7c12cc6e7860db014f4",
"md5": "08c9f8c5935de48c71107abc016bb5cd",
"sha256": "ebf23a1c42edf1ac7a980db0509e41fcbf6afeb6c389039edf8363db7d8abbcd"
},
"downloads": -1,
"filename": "tgit-0.22.0.tar.gz",
"has_sig": false,
"md5_digest": "08c9f8c5935de48c71107abc016bb5cd",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 91752,
"upload_time": "2025-07-15T16:38:56",
"upload_time_iso_8601": "2025-07-15T16:38:56.410882Z",
"url": "https://files.pythonhosted.org/packages/e2/68/c616408147c34359a962743a11ee7bf9b2aa4de3f7c12cc6e7860db014f4/tgit-0.22.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-15 16:38:56",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "tgit"
}