@ -1,3 +1,8 @@
if git config --global --get-all alias.$_alias >/dev/null 2>& 1 \
&& ! git config --global --get-all oh-my-zsh.git-commit-alias >/dev/null 2>& 1; then
return
fi
local -a _git_commit_aliases
local -a _git_commit_aliases
_git_commit_aliases = (
_git_commit_aliases = (
'build'
'build'
@ -14,19 +19,18 @@ _git_commit_aliases=(
'wip'
'wip'
)
)
local alias type
local _alias _ type
for type in " ${ _git_commit_aliases [@] } " ; do
for _type in " ${ _git_commit_aliases [@] } " ; do
# an alias can't be named "revert" because the git command takes precedence
# an alias can't be named "revert" because the git command takes precedence
# https://stackoverflow.com/a/3538791
# https://stackoverflow.com/a/3538791
case " $type " in
case " $_ type " in
revert) alias = rev ; ;
revert) _ alias= rev ; ;
*) alias = $type ; ;
*) _ alias= $_ type ; ;
esac
esac
local func = '!a() { if [ "$1" = "-s" ] || [ "$1" = "--scope" ]; then local scope="$2"; shift 2; git commit -m "' $type '(${scope}): ${@}"; else git commit -m "' $type ': ${@}"; fi }; a'
local _func = '!a() { if [ "$1" = "-s" ] || [ "$1" = "--scope" ]; then local scope="$2"; shift 2; git commit -m "' $type '(${scope}): ${@}"; else git commit -m "' $type ': ${@}"; fi }; a'
if ! git config --global --get-all alias.${ alias } >/dev/null 2>& 1; then
git config --global alias.${ alias } " $func "
git config --global alias.$_alias " $_func "
fi
done
done
unset _git_commit_aliases alias type func
git config --global oh-my-zsh.git-commit-alias "true"