1
0
Fork 0
git-shortmaps/README.md

2.0 KiB

git-shortmaps provides very concise (one- or two-character), user-configurable commands for Git with support for Bash tab completion.

shortmaps / Bash Completion

The bash_completion file contains Bash completion for custom commands and "shortmappings", which provide single-character aliases to common Git commands.

Setup

Source the bash_completion file (e.g. place in .bashrc or in /etc/bash_completion.d/ on Debian systems), with the path to the provided shortmaps file as the only argument:

$ . bash_completion ./shortmaps

You may also add your own mappings to ~/.git-shortmaps.

Usage

By default, the following mappings are available, each with tab completion:

  • a - git add
  • A - git add -A
  • B - git bisect
  • Bs - git bisect start
  • Bg - git bisect good
  • Bb - git bisect bad
  • Br - git bisect reset
  • c - git commit
  • ca - git commit --amend
  • co - git checkout
  • C - git commit -am
  • CS - git commit -S -am
  • d - git diff
  • f - git fetch
  • m - git merge
  • p - git push
  • P - git pull
  • Pr - git pull --rebase
  • R - git rebase
  • Ri - git rebase --interactive
  • Ra - git rebase --abort
  • Rc - git rebase --continue
  • s - git status --short
  • S - git stash
  • t - execute tig
  • T - git tag
  • - - git checkout -
  • -- - cd to root dir of repository

The shortmaps may only be used within a git repository; otherwise, they will invoke the actual command on the system.

If a shortmap conflicts with an existing command on your system, then you may wrap the command in quotes to invoke the actual command rather than the shortmap (e.g. 'c' to invoke which c rather than the shortmap c).

Configuration

The file format is as follows:

KEY COMPLETION :CMD
KEY COMPLETION |CMD
KEY COMPLETION CMD

If CMD contains a colon (:) prefix, the command will be prefixed with git. If prefixed with a pipe (|), the command will be sent to eval (needed for certain features like subshells). Commands without either prefix will be executed normally.