Contrib is an sh sub-module that provides friendly wrappers to useful commands. Typically, the commands being wrapped are unintuitive, and the contrib version makes them intuitive.
Allows you to enter your password from the terminal at runtime, or as a string in your script.
Call sudo with password, if specified, else ask the executing user for a password at runtime via getpass.getpass().
Many git commands use a pager for output, which can cause an unexpected behavior when run through sh. To account for this, the contrib version sets _tty_out=False for all git commands.
Call git with STDOUT connected to a pipe, instead of a TTY.
Why is _tty_out=True the default? and Why does my command’s output have color?
Returning a process function along with the command will tell sh to use that function to preprocess the arguments at execution time using the _arg_preprocess special kwarg.