Playing the Blame Game
One of the features I use a lot in git is ‘git blame’, which will show you who was the last person to change each line in any file in…
One of the features I use a lot in git is ‘git blame’, which will
show you who was the last person to change each line in any file
in your project, and which commit it was.
This is most often used by me to avoid embarassment, as I have a
ridiculously short term memory – there have been several dozen
times in the last few years where I think “What moron added this code?
It looks as if a slow monkey on barbituates got arbitrarily angry at the
keyboard!”, only to find through my friend ‘git blame’ that that monkey
was me. That’s helpful information to know before you go yelling at
your co-workers.
So, we thought adding this face-saving functionality to GitHub might
be a good idea. Enter the ‘blame’ link:

If you click that link from the file view of any of the files in a
project, you’ll get something that looks thusly:

It’s basically the same view, with the code itself a bit truncated
and a bunch of fun new information added. For each block of code that
changed at once, it will show you the sha of the commit that last
changed it, along with the author, date and message of that commit.
Even cooler, it will show a little ” » ” icon next to the sha – if
you click this it will ‘drill down’ to show you the blame for the file
from that commit instead. Meaning, if you wanted to know who changed that
line before that gal, clicking on that icon will show you the
next previous person, and so on. If that doens’t make sense, just give
it a try – you can do this on any file in any of your projects. Go nuts!
(don’t really go nuts…)
Written by
Related posts
Year recap and future goals for the GitHub Innovation Graph
Discover the latest trends and insights on public software development activity on GitHub with data from the Innovation Graph through Q3 2025.
Help shape the future of open source in Europe
Read GitHub’s position on the European Open Digital Ecosystem Strategy and learn how to participate.
Build an agent into any app with the GitHub Copilot SDK
Now in technical preview, the GitHub Copilot SDK can plan, invoke tools, edit files, and run commands as a programmable layer you can use in any application.