Skip to content

afbroman/kommit

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 

Repository files navigation

Kommit

Create more detailed commit messages without committing!

asciicast

While we were looking at this lovely project, we have seen some, ehmmm, downsides of it. Why not? let’s keep safe the source code and collect all the information somewhere else?

Idea

  • Commit often, Commit more!
  • A mini shell tool for storing messages: kommit -m "Fixes a bug in XXX function"
  • Store your commit-extra information in to a hidden file .git/kommit-message
  • Append the .git/kommit-message to the original commit message in prepare-commit-msg hook and delete .git/kommit-message file after commit.

Usage

usage: kommit [-m <msg> | -t <msg> | -c | -e | -s | -i | -r | -h]

    -m <msg>        append message
    -t <msg>        append message with timestamp
    -c              check if hook installed ?
    -e              edit messages
    -s              show current message(s)
    -i              install kommit hook to .git/hooks/prepare-commit-msg
    -r              remove kommit hook, delete .git/hooks/prepare-commit-msg
    -h              print this message

Basic usage is shown below:

  • kommit -m "Message" : Append new message.
  • kommit -t "Message" : Append new message with timestamp.
  • kommit -s : Show current messages
  • kommit -e : Edit messages. This uses $EDITOR environment variable.

Sample Output

    # Your commit title

    - Your note...
    - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
    eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
    enim ad minim veniam, quis nostrud exercitation ullamco laboris
    nisi ut aliquip ex ea commodo consequat.

Install: Kommit

You can download or get it via curl. Go to your desired bin/ folder or go somewhere which is in the $PATH:

cd ~/bin/          # example bin/ folder
curl -O https://raw.githubusercontent.com/bilgi-webteam/kommit/master/bin/kommit
chmod +x kommit

Git Hook: Install & Remove or Check

Super easy;

  • kommit -i installs hook,
  • kommit -r removes hook,
  • kommit -c checks if the hook is installed to your repo!

Alternative Installation and Usage

Rename the script like mv kommit git-kommit and place it one of your folders present in your $PATH

  • git kommit -i : Installs hook.
  • git kommit -r : Removes hooks.
  • git kommit -c : Checks if the hooks is installed.
  • git kommit -b : Shows bash completion snippet
  • git kommit -m "Message" : Append new message.
  • git kommit -t "Message" : Append new message with timestamp.
  • git kommit -s : Show current messages.
  • git kommit -e : Edit messages. This uses $EDITOR environment variable.

If you use it in this way (git-kommit), you can have the bash completion feature. Don’t forget, git-kommit way only works under git folder. To have the bash completion snippet; use git kommit -b and grab the code and add it to your shell environment.

Environment Variables

Kommit checks $KOMMIT_BULLET and $KOMMIT_WRAP_AT variables. Default bullet style for message is - You can change this via;

KOMMIT_BULLET="*" kommit -m "Hello World"   # or,

export KOMMIT_BULLET="*"                    # define it in your .bashrc

Also, default value for wrap text is: 72 you can change it via;

KOMMIT_WRAP_AT=60 kommit -m "Hello World"   # or,

export KOMMIT_WRAP_AT=60                    # define it in your .bashrc

IDE Integrations

Change Log

2016-01-22

  • Added: kommit -t feature
  • Added: You don’t need to install hook, it installs it self in the first message addition.
  • Added: Bash completion snippet

2016-01-20

  • MIT license added.
  • Contributers list added.
  • IDE integration packages list added.

2016-01-19

  • New feature; edit messages! kommit -e
  • New feature; check hook kommit -c

2016-01-16

  • Release v0.1.0

2016-01-15

  • Initial commit!

Contribute

Feel free to send your PR’s!

  1. fork (https://github.com/bilgi-webteam/kommit/fork)
  2. Create your branch (git checkout -b my-features)
  3. commit yours (git commit -am 'added killer options')
  4. push your branch (git push origin my-features)
  5. Than create a new Pull Request!

Contributers

Other contributers can be found here.

License

This project licensed under MIT.

About

Build your commit message without touching or editing your code!

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 100.0%