結論: どれかを諦めなければならない、エクセルを捨てる
形式 | Unicode | Excel | Git |
---|---|---|---|
Shift_JIS(CP932) CSV | × | ○ | △ デフォルトでは diff が化ける |
UTF-16LE TSV | ○ | ○ | × バイナリファイルとして扱われる |
UTF-8 CSV | ○ | × | ○ |
xlsx | ○ | ○ | × バイナリ |
XML spreadsheet | ○ | ○ | △ コンフリクトしやすい |
CSV エディタを使うとオートフィルタや条件付き書式や VLOOKUP が恋しくなるのでエクセルを使いたかった
CP932 や UTF-16 に対応した diff/merge tool を使うか、
git の smudge/clean filter
で文字コードを変換するよう設定すれば git の問題は解決するかもしれないが、
git config
を設定し、Windows の場合は nkf や iconv を別途入れ、というのを
関係者全員にやってもらう必要がある
XML spreadsheet とかいうのを使えば、XML なのでテキストファイルとしては扱いやすいが、 著者情報やセル幅などが意図せず変更されてしまいコンフリクトしやすい。 また他のツールでサポートされていないか、扱いにくいことが多い (わざわざ CSV を使っているのは他のツールで使うためだろうから、これでは本末転倒)
UTF-8 CSV にしてエクセルは捨てるというのがよい、 LibreOffice や、一部の CSV エディタでは、UTF-8 のファイルを扱うことができる