Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
April 16, 2021 07:04 pm GMT

My first git alias

At work I'm often jumping back and forth between various branches and pull requests and I sometimes find myself struggling to remember the name of a recent branch I need to use.

For years I've used git reflog as a short-cut to look at my git history and identify my recent work. It works okay, but it's very hard to make sense of:

git reflog output

Other times I try to use git branch, but that doesn't give you much context about anything and of course it can be easy to drown in the large number of branches:

~/d/n/webapp (typescript ) git branch  add-cognito-auth  doritos  eslint-prettier  main* typescript  updated-husky

Recently I got frustrated by this and decided to find a solution and stumbled on this stackoverflow question, How can I get a list of git branches ordered by most recent commit?, which taught me two really useful techniques.

  1. You can sort branches by commit date using git branch --sort=-committerdate which is great in an of itself (watch out for the - after sort= which puts the most recent branches first)
  2. You can enhance this output a bit using this wild syntax git branch --sort=-committerdate --format='%(HEAD)%(color:yellow)%(refname:short) | %(color:bold green)%(committerdate:relative) | %(color:blue)%(subject)%(color:reset)' --color=always which I'm never going to remember.

Which led me to create my first git alias after over 12 years of using it. Here's how I did it and here's what it looks like:

git config --global alias.branches "branch --sort=-committerdate --format='%(HEAD)%(color:yellow)%(refname:short) | %(color:bold green)%(committerdate:relative) | %(color:blue)%(subject)%(color:reset)' --color=always"

That command added this to the boottom of my ~/.gitconfig file:

[alias]        branches = branch --sort=-committerdate --format='%(HEAD)%(color:yellow)%(refname:short) | %(color:bold green)%(committerdate:relative) | %(color:blue)%(subject)%(color:reset)' --color=always

Now when I type git branches I see this lovely output:
nicely formatted git branch list

Git isn't always the easiest to use, but this alias has made it just a little bit better, for me anyway. What kind of aliases do you use?


Original Link: https://dev.to/xjamundx/my-first-git-alias-4ldh

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To