git-sed(1) replace patterns in git-controlled files


git-sed [ -c ] [ -f flags ] search replacement


Run git grep and then send results to sed for replacement with the given flags, if -f is provided.

Also runs git commit if -c is provided.



commit the resulting changes with a standard commit message detailing the exact command ran. will fail if there are unstaged changes.

-f <flags>

will use the given regex flags in the sed command (for example "g" replaces multiple times on the same line).


the pattern passed to grep and to the first part of the sed expression.


the replacement passed to sed, the second part of the sed expression.


$ git sed 'my_function' 'do_stuff'
# ... only does the changes, without committing
$ git commit -m"use proper function name"
$ git sed -c 'do_stuff' 'stuff'
# .. does the changes and a commit
$ git sed -f g do_stuff stuff
# .. g is actually pretty important, otherwise you will miss some
# stuff!