#!/bin/bash ## Wrapper for my dotfiles git="/usr/bin/git --git-dir=$HOME/.dotfiles --work-tree=$HOME" cmd="$git status" # by default, give the status [ "$1" = "-g" ] && shift && cmd="$git $@" # make the wrapper transparent [ "$1" = "-l" ] && shift && cmd="$git log" [ "$1" = "-c" ] && shift && cmd="$git commit $@" [ "$1" = "-ca" ] && shift && cmd="$git commit -a" [ "$1" = "-cas" ] && shift && cmd="$git commit -S --amend $1" [ "$1" = "-ch" ] && shift && cmd="$git checkout $1" [ "$1" = "-mv" ] && shift && cmd="$git mv $@" [ "$1" = "-ps" ] && shift && cmd="$git push $@" [ "$1" = "-pl" ] && shift && cmd="$git pull" [ "$1" = "-a" ] && shift && cmd="$git add $@" [ "$1" = "-rm" ] && shift && cmd="$git rm --cached $@" [ "$1" = "-rb" ] && shift && cmd="$git rebase $@" [ "$1" = "-rbi" ] && shift && cmd="$git rebase -i $1" [ "$1" = "-rs" ] && shift && cmd="$git reset --soft $1" [ "$1" = "-d" ] && shift && cmd="$git diff $@" if [ "$1" = "-m" ] ; then shift [ "$1" = "" ] && echo "Please provide a branche to merge from" && exit 1 if [ "$1" != "-a" ] ; then while [ "$1" != "" ] ; do $git checkout $1 && $git merge dev shift done else branches="$(echo "$($git branch)" | sed -e 's/\*/ /;t')" for arg in $branches ; do if [ "$arg" != "dev" ] ; then $git checkout $arg && $git merge dev fi done fi cmd="$git checkout dev" fi $cmd