Fall back to normal git branch, if any unknown args given. Also add aliases for git branch -a and -m

This commit is contained in:
Nathan Broadbent
2012-08-16 02:53:52 +12:00
parent ef91007da9
commit b978b1bd43
3 changed files with 10 additions and 2 deletions

View File

@@ -68,6 +68,7 @@ git_commit_no_msg_alias="gch"
git_remote_alias="gr" git_remote_alias="gr"
git_branch_alias="gb" git_branch_alias="gb"
git_branch_all_alias="gba" git_branch_all_alias="gba"
git_branch_move_alias="gbm"
git_rebase_alias="grb" git_rebase_alias="grb"
git_rebase_alias_continue="grbc" git_rebase_alias_continue="grbc"
git_rebase_alias_abort="grba" git_rebase_alias_abort="grba"

View File

@@ -128,7 +128,6 @@ if [ "$git_setup_aliases" = "yes" ]; then
_alias $git_log_stat_alias='git log --stat --max-count=5' _alias $git_log_stat_alias='git log --stat --max-count=5'
_alias $git_log_graph_alias='git log --graph --max-count=5' _alias $git_log_graph_alias='git log --graph --max-count=5'
_alias $git_add_all_alias='git add -A' _alias $git_add_all_alias='git add -A'
_alias $git_branch_all_alias='git branch -a'
fi fi

View File

@@ -12,6 +12,12 @@
# Adds numbered shortcuts to output of ls -l, just like 'git status' # Adds numbered shortcuts to output of ls -l, just like 'git status'
unalias $git_branch_alias > /dev/null 2>&1; unset -f $git_branch_alias > /dev/null 2>&1 unalias $git_branch_alias > /dev/null 2>&1; unset -f $git_branch_alias > /dev/null 2>&1
function _scmb_git_branch_shortcuts { function _scmb_git_branch_shortcuts {
# Fall back to normal git branch, if any unknown args given
if [[ -n "$@" ]] && [[ "$@" != "-a" ]]; then
$_git_cmd branch "$@"
return 1
fi
# Use ruby to inject numbers into ls output # Use ruby to inject numbers into ls output
ruby -e "$( cat <<EOF ruby -e "$( cat <<EOF
output = %x(script -q -c "$_git_cmd branch --color=always \"$@\"" /dev/null) output = %x(script -q -c "$_git_cmd branch --color=always \"$@\"" /dev/null)
@@ -32,4 +38,6 @@ EOF
done done
} }
alias "$git_branch_alias"="_scmb_git_branch_shortcuts" alias "$git_branch_alias"="exec_scmb_expand_args _scmb_git_branch_shortcuts"
alias "$git_branch_all_alias"="exec_scmb_expand_args _scmb_git_branch_shortcuts -a"
alias "$git_branch_move_alias"="exec_scmb_expand_args _scmb_git_branch_shortcuts -m"