diff -Nurd git-2.34.0.orig/Makefile git-2.34.0/Makefile
--- git-2.34.0.orig/Makefile	2021-11-15 02:28:57.000000000 -0500
+++ git-2.34.0/Makefile	2022-01-22 21:19:40.000000000 -0500
@@ -1207,7 +1207,7 @@
 CFLAGS = -g -O2 -Wall
 LDFLAGS =
 CC_LD_DYNPATH = -Wl,-rpath,
-BASIC_CFLAGS = -I.
+BASIC_CFLAGS = 
 BASIC_LDFLAGS =
 
 # library flags
@@ -1249,7 +1249,7 @@
 ALL_COMMANDS_TO_INSTALL += git-upload-pack$(X)
 endif
 
-ALL_CFLAGS = $(DEVELOPER_CFLAGS) $(CPPFLAGS) $(CFLAGS)
+ALL_CFLAGS = -I. $(DEVELOPER_CFLAGS) $(CPPFLAGS) $(CFLAGS)
 ALL_LDFLAGS = $(LDFLAGS)
 
 comma := ,
diff -Nurd git-2.34.0.orig/contrib/completion/git-completion.bash git-2.34.0/contrib/completion/git-completion.bash
--- git-2.34.0.orig/contrib/completion/git-completion.bash	2021-11-15 02:28:57.000000000 -0500
+++ git-2.34.0/contrib/completion/git-completion.bash	2022-01-22 21:18:41.000000000 -0500
@@ -54,6 +54,9 @@
 #     When set to "1" suggest all options, including options which are
 #     typically hidden (e.g. '--allow-empty' for 'git commit').
 
+# Make sure we're not in posix mode, otherwise process substitution is invalid.
+set +o posix
+
 case "$COMP_WORDBREAKS" in
 *:*) : great ;;
 *)   COMP_WORDBREAKS="$COMP_WORDBREAKS:"
diff -Nurd git-2.34.0.orig/grep.c git-2.34.0/grep.c
--- git-2.34.0.orig/grep.c	2021-11-15 02:28:57.000000000 -0500
+++ git-2.34.0/grep.c	2022-01-23 07:36:32.000000000 -0500
@@ -362,6 +362,7 @@
 	int jitret;
 	int patinforet;
 	size_t jitsizearg;
+	int literal = !opt->ignore_case && (p->fixed || p->is_fixed);
 
 	/*
 	 * Call pcre2_general_context_create() before calling any
@@ -382,10 +383,7 @@
 		}
 		options |= PCRE2_CASELESS;
 	}
-	if ((!opt->ignore_locale && !has_non_ascii(p->pattern)) ||
-	    (!opt->ignore_locale && is_utf8_locale() &&
-	     has_non_ascii(p->pattern) && !(!opt->ignore_case &&
-					    (p->fixed || p->is_fixed))))
+	if (!opt->ignore_locale && is_utf8_locale() && !literal)
 		options |= (PCRE2_UTF | PCRE2_MATCH_INVALID_UTF);
 
 #ifdef GIT_PCRE2_VERSION_10_36_OR_HIGHER