1. ホーム
  2. git

[解決済み] UTF-16のファイルをgitにテキストとして認識させることはできますか?

2022-04-26 11:29:20

質問

Virtual PC の仮想マシンファイル (*.vmc) を git で追跡しているのですが、変更を加えた後、git がそのファイルをバイナリとして認識し、差分を取ってくれません。 このファイルは UTF-16 でエンコードされていることがわかりました。

git にこのファイルがテキストであることを認識させ、適切に処理するように教えることはできますか?

Cygwinで、core.autocrlfをfalseにしてgitを使っています。 必要であれば、UNIX上でmSysGitやgitを使うことができます。

どのように解決するのですか?

この問題でしばらく悩んでいたのですが、ちょうど(私にとって)完璧な解決策を発見したところです。

$ git config --global diff.tool vimdiff      # or merge.tool to get merging too!
$ git difftool commit1 commit2

git difftool と同じ引数を取ります。 git diff の代わりに、あなたの選んだ diff プログラムを実行します。 diff . だから、マルチバイトを意識したdiffを選ぶ(私の場合。 vim を使用し git difftool の代わりに git diff .

difftool"は長くて入力しにくいですか? 問題ありません。

$ git config --global alias.dt difftool
$ git dt commit1 commit2

Gitはロックだ。