Since mgit is not a public executable it will not be present in $PATH -
so we must use %{exe:...} over %{bin:...}.
The fix is partial because the (enabled_if ...) stanza doesn't work
correctly for me at least.
This implementation is much more close to the documentation & fold all
changes into one commit. Then, it pushes this commit remotely. This
commit deleted local changes which complexify the codebase for a
questionable interest. As the documentation said, any changes are
delayed and not directly "committed" until the end of the given
function. For instance:
> batch
> set /bar "Bar"
> exists /bar
/bar does not exists
is an expected behavior. Only after a quit (which delimit the end of the
batch process), /bar will be committed and will exist!