| title | description |
|---|---|
Never Forgit |
A collection of our blog posts about git, git aliases and everything git. |
For the following aliases we're going to define shell functions inside of an alias and call them directly afterwards.
rbb = "!f() { git rebase -i HEAD~$1; }; f"
Interactive rebase by the amount of commits passed through the first argument. Using git rbb 3 in a project with at least three commits will leave you in your editor of choice with something like this:

There are many different options when it comes to customizing git log. Some of the most common options are passed using flags like --graph or --decorate, but the main differentiator is --pretty. Here are some of ours, with screenshots to showcase them:

--pretty=format:'%h %ad | %s%d [%an]'

--pretty=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(auto)%d%C(reset)'
Extensive documentation on how to build your own --pretty line can be found here. An example of a finished git log alias could be:
lg = git log --graph --abbrev-commit --decorate --pretty=format:'%h %ad | %s%d [%an]'
If you've installed the hub CLI ([and here's how to do that]({% post_url 2017-03-28-installing-the-hub-cli-on-linux %})), you can add the following alias to your toolbelt:
pr = !hub pull-request
In case you're wondering, that ! at the start of the alias tells git that the command has to be run by the shell.