I decided to write down few useful Git aliases I’m using every day.
git config --global alias.fetch-master "!git fetch -p && git fetch origin master:master"
git config --global alias.fetch-checkout "!git fetch-master && git rev-parse --abbrev-ref HEAD > .git/BRANCH && git checkout master && git branch -D `cat .git/BRANCH` && rm .git/BRANCH"
git config --global alias.fetch-merge "!git fetch-master && git merge master"
git config --global alias.fetch-rebase "!git fetch-master && git rebase master"
Or how it looks in .gitconfig:
[alias]
fetch-master = !git fetch -p && git fetch origin master:master
fetch-checkout = !git fetch-master && git rev-parse --abbrev-ref HEAD > .git/BRANCH && git checkout master && git branch -D `cat .git/BRANCH` && rm .git/BRANCH
fetch-merge = !git fetch-master && git merge master
fetch-rebase = !git fetch-master && git rebase master