Tuesday, September 3, 2019

Use Git Grep to Replace Strings in Files in Your Git Repository

On Linux:

git grep -l 'original_text' | xargs sed -i 's/original_text/new_text/g'
On Mac:

git grep -l 'original_text' | xargs sed -i '' -e 's/original_text/new_text/g'
I needed to change a string in a bunch of files and I used the command above using git grep to do it. Worked like a charm.

The -l argument to git grep only returns the file names and not the location in the file like it usually does.

The -e argument is needed with the sed portion on OSX as stated by asmeurer in the comments

No comments:

Post a Comment