【Windows】「Git Bash」の文字化けの解消方法!
Windowsにおける「Git Bash」の文字化け解消方法を知っていますか。本記事では、WindowsのGit Bashが文字化けしてしまう問題に対する対処法として様々な解消方法を紹介します。ぜひ最後まで読んでみてください。
目次
- 1【Windows】「Git Bash」の文字化けの解消方法〜四角〜
- ・四角に文字化けする場合
- 2【Windows】「Git Bash」の文字化けの解消方法〜pingコマンド〜
- ・pingコマンドの表示結果が文字化けする場合
- 3【Windows】「Git Bash」の文字化けの解消方法〜lsコマンド〜
- ・lsコマンドでファイル名が文字化けする場合
- 4【Windows】「Git Bash」の文字化けの解消方法〜漢字〜
- ・テキストファイル内の漢字が文字化けする場合
- 5【Windows】「Git Bash」の文字化けの解消方法〜git statusコマンド〜
- ・git statusコマンドの表示結果が文字化けする場合
- 6【Windows】「Git Bash」の文字化けの解消方法〜git diffコマンド〜
- ・git diffコマンドの表示結果が文字化けする場合
- ・まとめ
- ・合わせて読みたい!Windowsに関する記事一覧
【Windows】「Git Bash」の文字化けの解消方法〜四角〜
Windowsにおける「Git Bash」の文字化け解消方法を紹介します。まずはWindowsにおける「Git Bash」が四角に文字化けする場合にフォーカスして解説していきましょう。
また、git statusコマンドやgit diffコマンドの文字化けについても紹介します。
四角に文字化けする場合
Windowsにおける「Git Bash」が四角に文字化けする場合におけるWindowsの「Git Bash」の文字化け解消方法を以下の順番でお伝えします。ショートカットのプロパティを開く作業がありますが、比較的簡単なので問題ないでしょう。
Git Bashのショートカットのプロパティを開く
まずはWindowsでGit Bashのショートカットのプロパティを開いてください。ショートカットのプロパティを開いたら、以下の手順に進みましょう。
コンソールのフォント設定を変更する
WindowsでGit Bashのショートカットのプロパティを開いたら、コンソールのフォント設定を変更します。以上の手順でWindowsにおける「Git Bash」が四角に文字化けする問題を解消できます。変更する方法は簡単なので問題ないでしょう。
【Windows】「Git Bash」の文字化けの解消方法〜pingコマンド〜
ここでもWindowsにおける「Git Bash」の文字化け解消方法を紹介します。Windowsにおける「Git Bash」のpingコマンドに着目して解説していきます。以下では、pingコマンドの表示結果が文字化けする場合の解消方法をみていきます。
記事後半にはWindowsにおける「Git Bash」のgit statusコマンドやgit diffコマンドの表示結果が文字化けする場合においてお伝えしていきます。
pingコマンドの表示結果が文字化けする場合
もしもWindowsにおける「Git Bash」のpingコマンドの表示結果が文字化けする場合には以下の解消方法を試してみてください。なお、pingもしくはipconfigなどのWindowsのコマンドは、Shift_JIS(CP932)で出力設定されています。
したがって、Git Bashで文字コードをUTF-8にすることによって、Shift_JISで出力されたものをUTF-8で表示させようとします。結果として文字化けが起引き起こってしまいます。
.bashrcファイルにコードを追記する
Windowsにおける「Git Bash」のpingコマンドの表示結果が文字化けする場合には、.bashrcファイルにコードを追記しましょう。Git Bashの文字コードをShift_JISにすることによって、文字化けは発生しなくなるでしょう。
しかし、その方法はおすすめしません。「Git Bash文字化け ping」で調べると、Git Bashでのpingの文字化けを解決するというタイトルの記事をみt、その記事を見つけ出せます。
そこで上の画像のシェルスクリプトを.bashrcファイルにコピペして、Git Bashを再起動することによりpingの結果が文字化けしないようになるのです。
【Windows】「Git Bash」の文字化けの解消方法〜lsコマンド〜
次もWindowsにおける「Git Bash」の文字化け解消方法を紹介します。そこでここではWindowsにおける「Git Bash」のlsコマンドに着目して解説していきます。lsコマンドでファイル名が文字化けする場合についてお伝えしていきましょう。
加えてWindowsにおける「Git Bash」のgit statusコマンドやgit diffコマンドで文字化けする場合においても解説するのでぜひ参考にしてみてください。
lsコマンドでファイル名が文字化けする場合
Windowsにおける「Git Bash」のlsコマンドでファイル名が文字化けする場合には、以下の解消方法の手順を試してください。ショートカットのプロパティを開く作業はありません。四角に文字化けする場合のみ、ショートカットのプロパティを開きます。
・lsコマンドにオプションを付ける
・.bash_profileにエイリアスを定義する
上記のように、流れとしてはまずlsコマンドにオプションを付け手から.bash_profileにエイリアスを定義していきます。
lsコマンドにオプションを付ける
Windowsにおける「Git Bash」のlsコマンドでファイル名が文字化けしてしまったらはじめに、lsコマンドにオプションを付けてください。
.bash_profileにエイリアスを定義する
次にWindowsにおける「Git Bash」のlsコマンドにオプションを付けたら、.bash_profileにエイリアスを定義させます。.bash_profileにエイリアスを定義させることができたら、lsコマンドでファイル名が文字化けしなくなるでしょう。
【Windows】「Git Bash」の文字化けの解消方法〜漢字〜
上記ではWindowsにおける「Git Bash」のlsコマンドでファイル名が文字化けする場合に、lsコマンドにオプションを付けて.bash_profileにエイリアスを定義するという解消方法を紹介しました。
続いて紹介するのはWindowsにおける「Git Bash」の文字化け解消方法で、Windowsにおける「Git Bash」の漢字にフォーカスしてお伝えしていきます。
なお、ショートカットのプロパティを開く作業はないので比較的スムーズに解消できるでしょう。ショートカットのプロパティは四角に文字化けする場合のみ適用します。
漢字の後には、git statusコマンドやgit diffコマンドで文字化けしてしまう場合における解消方法を紹介していきます。
テキストファイル内の漢字が文字化けする場合
Windowsにおける「Git Bash」のテキストファイル内の漢字が文字化けする場合には、以下の3つの手順を参考にしてみてください。
・ロケールの環境変数を確認する
・ロケールの環境変数を設定する
・.bash_profileにexportコマンドを登録する
ロケールの環境変数を確認
Windowsにおける「Git Bash」のテキストファイル内の漢字が文字化けする場合に、ロケールの環境変数を確認すると、以下のようになっています。
・$ locale
・LANG= LC_CTYPE="C"
・LC_NUMERIC="C" LC_TIME="C"
・LC_COLLATE="C" LC_MONETARY="C"
・LC_MESSAGES="C" LC_ALL=C
そこで上記の環境変数に「ja_JP.utf8」を指定することで表示が正しくなります。なお、locale -aと入力すると指定できるロケールの一覧が表示されるので試してみてください。
ロケールの環境変数を設定
exportコマンドで環境変数を設定するには、下記のコマンドを実行します。
・export LC_ALL=ja_JP.utf8
・export LANG=ja_JP.utf8
・export LANGUAGE=ja_JP.utf8
・export LC_CTYPE="ja_JP.utf8"
・export LC_NUMERIC="ja_JP.utf8"
・export LC_TIME="ja_JP.utf8"
・export LC_COLLATE="ja_JP.utf8"
・export LC_MONETARY="ja_JP.utf8"
・export LC_MESSAGES="ja_JP.utf8"
.bash_profileにexportコマンドを登録
上記のとおり、.bash_profileにexportコマンドを登録したら以下のようになります。
・$ locale
・LANG=ja_JP.utf8
・LC_CTYPE="ja_JP.utf8"
・LC_NUMERIC="ja_JP.utf8"
・LC_TIME="ja_JP.utf8"
・LC_COLLATE="ja_JP.utf8"
・LC_MONETARY="ja_JP.utf8"
・LC_MESSAGES="ja_JP.utf8"
・LC_ALL=ja_JP.utf8
【Windows】「Git Bash」の文字化けの解消方法〜git statusコマンド〜
Windowsにおける「Git Bash」の文字化け解消方法を紹介します。ここではWindowsにおける「Git Bash」のgit statusコマンドに着目してお伝えしていきます。git statusコマンドやgit diffコマンドについて深掘りしていきましょう。
git statusコマンドの表示結果が文字化けする場合
以下では、Windowsにおける「Git Bash」のgit statusコマンドの表示結果が文字化けする場合における解消方法をみていきます。Windowsにおける「Git Bash」のcore.quotepathの設定を変更するという方法です。
core.quotepathの設定を変更する
Windowsにおける「Git Bash」のcore.quotepathの設定を変更する方法を解説していきましょう。git status コマンドの表示で、日本語のファイル名が下記のように文字化けしてしまうケースあります。
・$ git status
・On branch master
・Untracked files: (use "git add <file>..." to include in what will be committed)
・"\343\201\202\343\201\202\343\201\202.txt"
・nothing added to commit but untracked files present (use "git add" to track)
上記の場合には、下記のようにcore.quotepath設定をfalseに設定します。
・$ git config --global core.quotepath false
設定の確認
上記で設定した値を確認するには下記のようにしてください。
・$ git config --global --list
・core.pager=LESSCHARSET=utf-8 less
・core.quotepath=false
また、設定した値を削除するには下記のようにしましょう。
・$ git config --global --unset core.pager
・$ git config --global --unset core.quotepath
【Windows】「Git Bash」の文字化けの解消方法〜git diffコマンド〜
最後にもWindowsにおける「Git Bash」の文字化け解消方法を紹介します。ここではWindowsにおける「Git Bash」のgit diffコマンドに着目してお伝えしていきます。
git diffコマンドの表示結果が文字化けする場合
Windowsにおける「Git Bash」のgit diffコマンドの表示結果が文字化けする場合には、core.pagerの設定を変更する方法を試していきましょう。
core.pagerの設定を変更する
core.pagerの設定を変更する方法を紹介します。git diff の出力に日本語が含まれている場合に、下記のように数値の表示に文字化けしてしまうケースがあるのです。
・$ git diff
・diff --git a/README.txt b/README.txt
・index 0005c4e..5d6ea9c 100644
・--- a/README.txt
・+++ b/README.txt
・@@ -1 +1 @@ -<E3><81><82><E3><81><84><E3><81><86><E3><81><88><E3><81><8A> +<E3><81><8B><E3><81><8D><E3><81><8F><E3><81><91><E3><81><93>
上記の場合には、ページャの設定。つまり、core.pagerで下記のようにLESSCHARSETを設定してください。
・$ git config --global core.pager "LESSCHARSET=utf-8 less"
また、システムの環境変数でGitのページャ設定をしておくことも可能です。
まとめ
今回の記事では【Windows】「Git Bash」の文字化けの解消方法!というテーマの記事を執筆しました。四角に文字化けする場合には、Git Bashのショートカットのプロパティからの方法を使用します。
Git Bashのショートカットのプロパティを開いたら、コンソールのフォント設定を変更するという流れです。lsコマンドでは、.bash_profileにエイリアスを定義する行程もあります。
漢字では、.bash_profileにexportコマンドを登録する作業があります。git statusコマンドでは、git statusコマンドの表示結果が文字化けする場合にどうすればいいのか解説しています。