It makes me sad to see people type more than they have to. With these aliases, you reduce the 4 most common commands to 2 letter abbreviations:
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.st status
NOTE: This updates your ~/.gitconfig
file and adds aliasses "co", "br", "ci", and "st".
If you collaborate with others, git pull
makes a messy log. Instead, always type git pull --rebase --ff-only
. This will make the merge history a lot more linear when possible, otherwise it falls back to the normal pull behavior. Of course, if you set this alias git p
is all you need to remember:
git config --global alias.p "pull --rebase --ff-only"
These last aliases pretty-print the output of git log
five different ways. They make the logs colorful, beautiful, and much more useful. To be honest, I haven't spent the time to review the git
manual to figure out how they work. I don't care. I copied them from someone else, who copied them from someone else. They work great. Thanks to the anonymous person that gave them to me. These aliases will help you love git logs:
git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative"
git config --global alias.lgg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative --name-only"
git config --global alias.ll 'log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat'
git config --global alias.ld 'log --pretty=format:"%C(yellow)%h\\ %C(green)%ad%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=short --graph'
git config --global alias.ls 'log --pretty=format:"%C(green)%h\\ %C(yellow)[%ad]%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=relative'
To install all these aliases:
Option A: Run the above commands. A copy has been placed at this link so you can download the script and run it.
Option B: Copy them out of my .gitconfig
which you can access via this link
Option C: If you trust me, and you shouldn't, you can run:
curl https://raw.githubusercontent.com/TomOnTime/tomutils/master/gitstuff/install-fav-git-aliases.sh.txt | sh -x