ignorowanie zmian pasujących do łańcucha w git diff

Dokonałem pojedynczej prostej zmiany dużej liczby plików kontrolowanych w git i chciałbym móc sprawdzić, czy żadne inne zmiany nie są wprowadzane do tego dużego zatwierdzenia.

Wszystkie zmiany są w formie

-                       "main()",
+                       OOMPH_CURRENT_FUNCTION,

gdzie „main ()” może być nazwą dowolnej funkcji. Chcę wygenerować różnicę wszystkich zmian, które nie są z tego formularza.

Opcje -G i -S do git diff są zwodniczo bliskie - znajdują zmiany, które pasują do ciągu lub wyrażenia regularnego.

Czy jest na to dobry sposób?

Dotychczasowe próby

Innepytanie opisuje, jak można zanegować wyrażenia regularne, używając tego podejścia, myślę, że polecenie powinno być

git diff -G '^((?!OOMPH_CURRENT_FUNCTION).)*

ale to tylko zwraca komunikat o błędzie

fatal: invalid log-grep regex: Invalid preceding regular expression

więc chyba git nie obsługuje tej funkcji regex.

Zauważyłem również, że standardowa zmienna unix ma opcję -I, aby „zignorować zmiany, których wszystkie wiersze pasują do RE”. Ale nie mogę znaleźć właściwego sposobu zastąpienia własnego diffa przez narzędzie różnicowe unix.

ale to tylko zwraca komunikat o błędzie

fatal: invalid log-grep regex: Invalid preceding regular expression

więc chyba git nie obsługuje tej funkcji regex.

Zauważyłem również, że standardowa zmienna unix ma opcję -I, aby „zignorować zmiany, których wszystkie wiersze pasują do RE”. Ale nie mogę znaleźć właściwego sposobu zastąpienia własnego diffa przez narzędzie różnicowe unix.

questionAnswers(2)

yourAnswerToTheQuestion