Starting with the discontinuation of cogito, i began to wonder about my future git usage patterns. On the one hand, i have become quite used to the convenience of some of the cogito commands, on the other hand i found myself using or looking up git commands every other day. Since the discontinuation, cogito cannot be expected to remedy those work-flow interruptions any time soon, so i actually started to cook up my own small set of convenience wrappers. I’m adding those on demand whenever i need a new source repository command, and i try hard to keep it simple, avoid giving the wrappers any options and keep an eye on them being very shell-completion friendly.
The GPLv3 licensed result is a single shell script plus a handful links for invocation: yyhelp.
For the curious, the prefix 'yy' was chosen to allow conflict free shell completion. I’ll quote the yyhelp information here, so people can decide if it’s interesting for them and also get to see the installation instructions. I’m not entirely sure where to take this shallow wrapper in the future, however keeping it simple is really the main incentive behind it. Any deeper logic required should rather be filed as git-core requests. If you want to talk to me about YummiYummiGit, drop me a line via email, or try #git on irc.freenode.net:6667.
YummiYummiGit YummiYummiGit
NAME
YummiYummiGit - The simplest git wrapper ever, yet convenient
SYNOPSIS
yyadd [FILES...] - add files to git repository
yybranch [-f] - add branch (forcable)
yybranchdel [-f] - delete branch (forcable)
yyChangeLog - show git log in ChangeLog style
yycommit [FILES...] - commit current working tree
yydiff [FILES...] - show committable differences in working tree
yygc - repack and prune repository
yyhelp - display yy* help information
yylsbranches - list branches
yylstags - list tags
yypull - pull upstream sources
yypushpull - push & pull upstream sources
yyremove [FILES...] - remove files from git repository
yyreset - reset (revert to HEAD) all files in the tree
yyrestore [FILES...] - forcefully recheckout specific files
yystatus - display working tree status
yytag - add tag
yytagdel - delete tag
yyuncommit - undo the last commit (must be unpushed)
yyview - browse & navigate the history
yywarp - checkout new branch
HISTORY
YummiYummiGit was created as a very shallow wrapper around git-* tool
option variants, to simplify common cases.
Depending on programming habits, YummiYummiGit may or may not suit your
daily needs. It is in any case not meant as a full replacement for the
git interface (there is e.g. no yyclone) and subject to change.
INSTALLATION
To install YummiYummiGit, copy yyhelp into a bin/ directory from $PATH
and invoke: ./yyhelp --create-aliases
YummiYummiGit-0.4 YummiYummiGit