That isn’t how this works. Based on OPs description, the fact that Sally made a change is gone since the last editor was Billy. It looks like Billy made the change to both column 1 and 2.
"Just so you know, we only take a snapshot every X minutes... so there's a chance Billy wasn't the person who made that change. If you had told me you were planning to fire people as a result of this tracking system I might have spent more than five minutes hacking it together with a cronjob and a git repository."
Sally makes a change to column 1 of record 1.
Billy makes a change to column 2 of record 1 a nanosecond later.
You commit to Git again.
Your boss wants to know who changed column 1 of record 1.
You report it was Billy.
Billy is fired.