Provided by: git-sh_1.1-1_all bug


       git-sh -- a git shell




       git-sh  starts  an  interactive  bash(1) session modified for git-heavy workflows. Typical
       usage is to change into the directory of a git work tree or bare repository  and  run  the
       git-sh command to start an interactive shell session.

       Top-level  command  aliases  are  created  for all core git(1) subcommands, git-sh builtin
       aliases (see BUILTIN ALIASES), and git command aliases defined in ~/.gitconfig.


       git-sh loads a set of standard aliases in addition to all core git commands.  The  builtin
       aliases are overridden by aliases defined in the user or system gitconfig files.

       a      git add

       b      git branch

       c      git checkout

       d      git diff

       f      git fetch --prune

       k      git cherry-pick

       l      git log --pretty=oneline --abbrev-commit

       n      git commit --verbose --amend

       r      git remote

       s      git commit --dry-run --short

       t      git diff --cached

   The Staging Area
       a      git add

       aa     git add --update (mnemonic: "add all")

       stage  git add

       ap     git add --patch

       p      git diff --cached (mnemonic: "patch")

       ps     git diff --cached --stat (mnemonic: "patch stat")

              git reset HEAD

   Commits and Commit History
       ci     git commit --verbose

       ca     git commit --verbose --all

       amend  git commit --verbose --amend

       n      git commit --verbose --amend

       k      git cherry-pick

       re     git rebase --interactive

       pop    git reset --soft HEAD^

       peek   git log -p --max-count=1

   Fetching and Pulling
       f      git fetch

       pm     git pull (mnemonic: "pull merge")

       pr     git pull --rebase (mnemonic: "pull rebase")

   Miscellaneous Commands
       d      git diff

       ds     git diff --stat (mnemonic: "diff stat")

       hard   git reset --hard

       soft   git reset --soft

       scrap  git checkout HEAD


       Anything  defined  in  the  [alias]  section of the repository, user, or system git config
       files are also available as top-level shell commands. Assuming a ~/.gitconfig that  looked
       like this:

             ci = commit --verbose
             ca = commit -a
             d  = diff
             s  = status
             thanks = !git-thanks

       \... you might then have the following shell session:

           master!something> echo "stuff" >somefile
           master!something*> s
           M  somefile
           master!something*> d
           diff --git a/somefile b/somefile
           -- a/somefile
           ++ b/somefile
           @@ -0,0 +1 @@
           + stuff
           master!something*> ca -m "add stuff"
           master!something> thanks HEAD

       The default prompt shows the current branch, a bang (!), and then the relative path to the
       current working directory from the root of the work  tree.   If  the  work  tree  includes
       modified  files  that  have  not  yet  been  staged,  a dirty status indicator (*) is also

       The git-sh prompt includes ANSI colors when the git color.ui option is set and enabled. To
       enable git-sh's prompt colors explicitly, set the config value to auto:

           $ git config --global auto

       Customize   prompt   colors   by   setting   the,,  and git config values:

           $ git config --global 'yellow reverse'
           $ git config --global 'blue bold'
           $ git config --global 'red'

       See colors in git for information.


       Bash completion support is automatically enabled for all git built-in  commands  and  also
       for  aliases  defined  in  the  user ~/.gitconfig file. The auto-completion logic is smart
       enough to know an alias d  that  expands  to  git-diff  should  use  the  same  completion
       configuration as the git-diff command.

       The  completion  code  is  a  slightly  modified version of the git bash completion script
       shipped with the core git distribution. The script is built into thegit-sh  executable  at
       compile time and need not be obtained or installed separately.


       Most  git-sh  behavior  can  be  configured  by editing the user or system gitconfig files
       (~/.gitconfig and /etc/gitconfig) either by  hand  or  using  git-config(1).  The  [alias]
       section is used to create basic command aliases.

       The  /etc/gitshrc  and ~/.gitshrc files are sourced (in that order) immediately before the
       shell becomes interactive.

       The ~/.bashrc file  is  sourced  before  either  /etc/gitshrc  or  ~/.gitshrc.   Any  bash
       customizations defined there and not explicitly overridden by git-sh are also available.


       PS1    Set  to  the  dynamic  git-sh  prompt.  This can be customized in the ~/.gitshrc or
              /etc/gitshrc files.

              Explicitly set the path to the git repository instead of assuming the nearest  .git

              Explicitly  set  the  path  to  the  root  of the work tree instead of assuming the
              nearest parent directory with a .git repository.


       bash(1), git(1), git-config(1),