This is largely a problem of GitHub and other code UIs making it awkward to see anything other than the most recent commit in blame view.
With `git blame` you can use `-w` to ignore whitespace changes and `-M` to detect moved/copied code; a lot of the time this will help to rapidly find the relevant commit rather than a lint change.
You can also use `git log` on a range of lines of a file: `git log -L 15,23:src/main.rs` and if you add `-p` you'll see diffs as well.
Comments can go out of date, commit messages (if used properly) provide a genuine timeline of the evolution of the code.
With `git blame` you can use `-w` to ignore whitespace changes and `-M` to detect moved/copied code; a lot of the time this will help to rapidly find the relevant commit rather than a lint change.
You can also use `git log` on a range of lines of a file: `git log -L 15,23:src/main.rs` and if you add `-p` you'll see diffs as well.
Comments can go out of date, commit messages (if used properly) provide a genuine timeline of the evolution of the code.