SourceTreeで.gitignoreが効かないときの対処法。

SourceTreeで.gitignoreが効かないときの対処法。

SourceTreeやgitそのものの細かい説明はひとまず省略して、.gitignoreファイルを設置すると、コミットしたくないファイルやフォルダを指定することができます。

しかし、.gitignoreを作成したはずなのに、コミットしたくないファイルがコミットの画面に現れてしまうことがありました。

そのときの対処法について。

文字コードが間違っている。

結論から申し上げますと、文字コードはUTF-8(BOMなし)でなければいけません。

その.gitignoreは、どこで作成したでしょうか。

今回の場合ですが、コミットしたくないフォルダの名前は日本語で「資料」とし、エクスプローラーから右クリックメニューでテキストファイルを作成して、その名前を.gitignoreに変更しました。

そして、.gitignoreをテキストエディタで開き、下記のように記入して保存しました。

しかし、右クリックメニューからテキストファイルを作成した場合、そのファイルの文字コードはShift-JISになってしまいます。

SourceTreeから.gitignoreを覗いてみると、日本語の部分が文字化けしてハテナマークになっています。

そのせいで「資料」という文字とは認識されず、コミットの対象外になっていません。

よって、EmEditorなどのように文字コードを指定して保存できるテキストエディタを使って、文字コードからUTF-8(BOMなし)を選んで保存し直しましょう。

これでようやく、日本語のフォルダも.gitignoreで認識させることができ、コミットの対象外にすることができました。

文字化けもしっかり直っています。

余談。

それにしても、2021年になった今になっても、なんでいまだに文字コードに悩まされなければいけないのでしょうか…。

早く全世界でUTF-8に統一されてほしい。

今回のように、右クリックからテキストを作成するとShift-JISですし、ExcelなどでもShift-JISがデフォルトですし、もしやUTF-8への統一を妨害しているのは、Microsoftなのでは…?