https://github.com/shreemanarjun/git_changie
git_changie is a powerful Dart command-line tool designed to simplify the generation of changelogs from Git commit messages while promoting a standardized commit message format. ๐
https://github.com/shreemanarjun/git_changie
changelog changelog-generator dart github gitmoji
Last synced: about 1 year ago
JSON representation
git_changie is a powerful Dart command-line tool designed to simplify the generation of changelogs from Git commit messages while promoting a standardized commit message format. ๐
- Host: GitHub
- URL: https://github.com/shreemanarjun/git_changie
- Owner: Shreemanarjun
- License: mit
- Created: 2024-09-25T04:01:39.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-31T07:21:47.000Z (over 1 year ago)
- Last Synced: 2025-01-29T17:44:37.343Z (about 1 year ago)
- Topics: changelog, changelog-generator, dart, github, gitmoji
- Language: Dart
- Homepage:
- Size: 20.5 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# `git_changie` ๐
`git_changie` is a powerful Dart command-line tool designed to simplify the generation of changelogs from Git commit messages while promoting a standardized commit message format. ๐
# Features ๐
## General Features ๐
- **Changelog Generation**: Automatically generates a changelog from Git commit messages.
- **Output File Customization**: Specify the output file name (default: `CHANGELOG.md`).
- **Backup Existing Changelog**: Automatically creates a backup of the existing changelog file before overwriting it.
## Command-Line Options ๐
- `--hash`: Include commit hash in the changelog.
- `--author`: Include commit author in the changelog.
- `--date`: Include commit date in the changelog.
- `--from-tag `: Generate changelog starting from a specific Git tag.
- `--to-tag `: Generate changelog up to a specific Git tag (inclusive).
- `--since `: Generate changelog starting from a specific date (format: YYYY-MM-DD).
- `--until `: Generate changelog up to a specific date (format: YYYY-MM-DD).
- `--output `: Specify the output file name (default: `CHANGELOG.md`).
- `--add-category `: Add a custom category for commit messages if needed.
- `--help`: Show help message with usage instructions.
## Emoji Categorization ๐
- Supports a variety of emoji categories for better organization of commit messages, including:
- ๐จ Style
- โก๏ธ Performance
- ๐ฅ Remove
- ๐ Fixes
- ๐ Critical Hotfix
- โจ Features
- ๐ Documentation
- ๐ Deployment
- ๐ UI Changes
- ๐ Initial Commit
- โ
Tests
- ๐๏ธ Security
- ๐ Secrets
- ๐ Release Tags
- ๐จ Warnings
- ๐ง Work In Progress
- ๐ CI Build
- โฌ๏ธ Downgrade
- โฌ๏ธ Upgrade
- ๐ Pin Dependencies
- ๐ท CI System
- ๐ Analytics
- โป๏ธ Refactor
- โ Add Dependency
- โ Remove Dependency
- ๐ง Configuration
- ๐จ Development Scripts
- ๐ Internationalization
- โ๏ธ Typos
- ๐ฉ Bad Code
- โช Revert
- ๐ Merge
- ๐ฆ Compiled Files
- ๐ฝ๏ธ API Changes
- ๐ Move/Rename Resources
- ๐ License
- ๐ฅ Breaking Changes
- ๐ฑ Assets
- โฟ๏ธ Accessibility
- ๐ก Comments
- ๐ป Drunken Code
- ๐ฌ Text Changes
- ๐๏ธ Database Changes
- ๐ Logs
- ๐ Remove Logs
- ๐ฅ Contributors
- ๐ธ User Experience
- ๐๏ธ Architectural Changes
- ๐ฑ Responsive Design
- ๐คก Mocking
- ๐ฅ Easter Eggs
- ๐ .gitignore
- ๐ธ Snapshots
- โ๏ธ Experiments
- ๐ SEO
- ๐ท๏ธ Types
- ๐ฑ Seed Files
- ๐ฉ Feature Flags
- ๐ฅ
Catch Errors
- ๐ซ Animations
- ๐๏ธ Deprecate Code
- ๐ Authorization
- ๐ฉน Minor Fixes
- ๐ง Data Inspection
- โฐ๏ธ Remove Dead Code
- ๐งช Failing Test
- ๐ Business Logic
- ๐ฉบ Healthcheck
- ๐งฑ Infrastructure
- ๐งโ๐ป Dev Experience
- ๐ธ Sponsorships
- ๐งต Multithreading
- ๐ฆบ Validation
With `git_changie`, you can effortlessly track and categorize changes in your project, making collaboration smoother and more organized! ๐
## Installation
### From GitHub
You can clone the repository and build it locally:
```bash
git clone https://github.com/Shreemanarjun/git_changie.git
cd git_changie
dart pub get
```
## Activate Globally from `pub.dev`
Run
```bash
dart pub global activate git_changie
```
To generate `CHANGELOG.MD`
```bash
git_changie
```
## First-Class Support with Gitmoji Plugin for VS Code
For a more visually appealing commit message experience, you can integrate the **Gitmoji** plugin for Visual Studio Code. This plugin provides a list of emojis to choose from, helping you maintain consistency in your commit messages.
To install the Gitmoji extension:
1. Open VS Code.
2. Go to Extensions (Ctrl+Shift+X).
3. Search for "Gitmoji" and install it.
4. Follow the extension's instructions to start using Gitmoji in your commit messages.
## Usage
Run the `git_changie` command in your terminal with various options to customize the output. Here are some common usages:
### Basic Command
To generate a changelog from your Git commits:
```bash
git_changie
```
### Include Commit Hash, Author, and Date
You can include the commit hash, author, and date in your changelog:
```bash
git_changie --hash --author --date
```
### Filter by Tags
Generate a changelog starting from a specific tag:
```bash
git_changie --from-tag v1.0.0
```
Or up to a specific tag:
```bash
git_changie --to-tag v2.0.0
```
### Filter by Date
You can filter commits by date ranges:
```bash
git_changie --since 2024-01-01 --until 2024-09-30
```
### Specify Output File
To specify a custom output file for the changelog:
```bash
git_changie --output my_changelog.md
```
### Add Custom Categories
You can add custom categories for your changelog entries:
```bash
git_changie --add-category "Custom Category"
```
### Help Command
For a full list of options, run:
```bash
git_changie --help
```
## Contributing
Feel free to submit issues, pull requests, or suggestions.
## License
This project is licensed under the MIT License. See the LICENSE file for more details.