[PATCH] Do not lose author name information to locale gotchas.
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:11
Subsystem:
the rest · Maintainer:
Linus Torvalds
I noticed format-patch loses authorship information of Lukas' patch when I run git tools with LC_LANG set to ja_JP. It turns out that the sed script to set environment variables were not working on his name (encoded in UTF-8), which is unfortunate but technically correct. Force sed invocation under C locale because we always want literal byte semantics. Signed-off-by: Junio C Hamano <redacted> --- * I might have screwed up people's names already without noticing; if that happened to you, please forgive me. I think this patch fixes all the problematic places... git-commit.sh | 2 +- git-format-patch.sh | 2 +- git-revert.sh | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) applies-to: 8eacf17303188e55375f76bea8051555ba1baf02 0375d39e7d3052bdb9b21f984a7b7d2b02e627a5
diff --git a/git-commit.sh b/git-commit.sh
index daf90f1..41955e8 100755
--- a/git-commit.sh
+++ b/git-commit.sh@@ -184,7 +184,7 @@ then } ' set_author_env=`git-cat-file commit "$use_commit" | - sed -ne "$pick_author_script"` + LANG=C LC_ALL=C sed -ne "$pick_author_script"` eval "$set_author_env" export GIT_AUTHOR_NAME export GIT_AUTHOR_EMAIL
diff --git a/git-format-patch.sh b/git-format-patch.sh
index 548d2d5..7ee5d32 100755
--- a/git-format-patch.sh
+++ b/git-format-patch.sh@@ -201,7 +201,7 @@ process_one () { ;; esac - eval "$(sed -ne "$whosepatchScript" $commsg)" + eval "$(LANG=C LC_ALL=C sed -ne "$whosepatchScript" $commsg)" test "$author,$au" = ",$me" || { mailScript="$mailScript"' a\
diff --git a/git-revert.sh b/git-revert.sh
index dfd914c..4154fe0 100755
--- a/git-revert.sh
+++ b/git-revert.sh@@ -112,7 +112,7 @@ cherry-pick) q }' set_author_env=`git-cat-file commit "$commit" | - sed -ne "$pick_author_script"` + LANG=C LC_ALL=C sed -ne "$pick_author_script"` eval "$set_author_env" export GIT_AUTHOR_NAME export GIT_AUTHOR_EMAIL
--- 0.99.9.GIT