Skip to content
/ gic Public

gic is a very simple but powerful command line tool, which aims at generating uniform and elegant commit message for you~

License

Notifications You must be signed in to change notification settings

iFaceless/gic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

      ___                       ___
     /\__\                     /\__\
    /:/ _/_       ___         /:/  /
   /:/ /\  \     /\__\       /:/  /
  /:/ /::\  \   /:/__/      /:/  /  ___
 /:/__\/\:\__\ /::\  \     /:/__/  /\__\
 \:\  \ /:/  / \/\:\  \__  \:\  \ /:/  /
  \:\  /:/  /   ~~\:\/\__\  \:\  /:/  /
   \:\/:/  /       \::/  /   \:\/:/  /
    \::/  /        /:/  /     \::/  /
     \/__/         \/__/       \/__/

What's gic

gic is a very simple but powerful command line tool, which aims at generating uniform and elegant commit message for you.

And more importantly, it's implemented in Rust~ :)

Inspired by the following projects:

  1. guitar
  2. Semantic Commit Messages with Emojis
  3. gitmoji
  4. GitCommitEmoji

Install

wget -q https://raw.githubusercontent.com/iFaceless/gic/master/install.sh | sh install.sh

Usage

gic

Run gic --help, you'll get all the available choices:

gic <version number>
Generate elegant and uniform commit messages~

USAGE:
    gic [FLAGS] [OPTIONS] <message>

FLAGS:
    -a, --amend       amend commit message
        --break       💥 Introducing breaking changes.
        --chore       🚀 Update build scripts, no production code change.
        --clean       🔥 Removing code or files.
        --conf        🔧 Changing configuration files.
        --docs        📝 Writing docs.
        --feat        ✨ Introducing new features.
        --fix         🐛 Fixing a bug.
    -h, --help        Prints help information
        --hotfix      🚑 Critical hotfix.
        --init        🎉 Initial commit
        --lintfix     🚨 Removing linter warnings.
        --perf        ⚡ Improving performance.
        --refactor    🔨 Refactoring code.
        --rename      🚚 Moving or renaming files.
        --security    🔒 Fixing security issues.
        --shit        💩 Dealing with shits.
        --style       💄 Updating the UI and style files.
        --tag         🔖 Releasing / Version tags
        --test        ✅ Adding tests.
    -V, --version     Prints version information
        --wip         🚧 Work in progress.

OPTIONS:
    -i, --issue <issue>...    Related issue ID
    -j, --jira <jira>...      Related JIRA task ID
    -s, --scope <scope>...    Scope of current commit

ARGS:
    <message>    Use the given <message> as the commit message

Notes

  1. Relate one or more JIRA tasks:

    gic "hello, world" -j 100 -j 200 -s src/lib.rs -s src/main.rs
    
  2. Change commit message:

    gic --amend --fix "get correct user count" -s src/members.rs --issue 123
    

Dev

  1. Don't forget to update the version number in Cargo.toml.
  2. make release, generate executable file under bin directory.

License

MIT License. Please feel free~

About

gic is a very simple but powerful command line tool, which aims at generating uniform and elegant commit message for you~

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published