I wonder if that could be used for a diff algorithm? Or maybe that already exists.
It chains back through the diffs to find out who edited the line.
So to address the OP problem you could have a hash that was based on : Original Line number , diff id , diff id etc