1. ホーム
  2. git

[解決済み] git diff を grep するには?

2023-02-26 22:12:27

質問

指定したパターンでフィルタリングされたgit-diffを表示する方法はありますか?

のようなものです。

git grepdiff pattern

changed file
+++ some sentence with pattern
changed file 2
--- some other pattern

残念ながら、最もシンプルな解決策では十分ではありません。

git diff | grep pattern 

+++ some sentence with pattern
--- some other pattern
# not an option as doesn't put the filename close to the match

私はawkを使った回避策を思いつきました

git diff | awk "/\+\+\+/{f = \$2}; /PATTERN/ {print f \$0} "

しかし、このためのコマンドがあることをぜひ知りたい。

どのように解決するのですか?

よくわからないが、そうではない git diff -G <regex> のフラグはOKですか?

-G < regex>

Look for differences whose added or removed line matches the given <regex>.