How would I in git determine all lines still in existence that were from a specific author. Say for example, a Tony had worked on my project and I wanted to find all lines in my develop branch that still exists and were from a commit that Tony authored?
Blaming only a limited line range Sometimes, You don't need to blame the entire file, you just need to blame in a limited line range. Git blame provides the option for that. -L will take the option for the start line and for the end line.
The git blame command is used to examine the contents of a file line by line and see when each line was last modified and who the author of the modifications was.
You can also quit the git blame window using the q key on your keyboard.
Git is a version control (VCS) system for tracking changes to projects. Version control systems are also called revision control systems or source code management (SCM) systems.
Maybe just git blame FILE | grep "Some Name"
.
Or if you want to recursively blame+search through multiple files:
for file in $(git ls-files); do git blame $file | grep "Some Name"; done
Note: I had originally suggested using the approach below, but the problem you can run into with it is that it may also possibly find files in your working directory that aren’t actually tracked by git, and so the git blame
will fail for those files and break the loop.
find . -type f -name "*.foo" | xargs git blame | grep "Some Name"
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With