2013でソース管理にGitを使用しています。変更した箇所の差分が表示されます。ところが、いつの頃からか一箇所だけ変更しても全体が変更しているとして表示されるようになってしまいました。SourceTreeというGitクライアントでは変更した箇所だけ差分表示されます。Commandsといった拡張機能をインストールしていますが無効にしても変化ありません。何かご存知ではないでしょうか。(追記)ファイル-保存オプションの詳細設定でエンコードを変えて動作を試して気づいたのですが、C:\Users[PC名]\AppData\Local\Temp\TFSTempというところに変更前の一時ファイル(vctmp9999_99999.vbの様な名前)ができて、それと現在のソースを比較してるようなのです。(ただし一時ファイルは通常見えません。シフトJISにしたソースファイル読み込み時にエンコードのエラーが発生して偶然発見出来ました。)その一時ファイルの改行がLFになってました。実際に編集しているソースはCR+LFです。試しにLFでソースファイルを保存すると正常に差分が表示されました。xssやxscはCR+LFです。VisualStudioの規定値もCR+LFだったと思いますし、わざわざLFに変えるのも対応としておかしいと思います。設定で改行を無視するか、一時ファイル作成時の改行をCR+LFにできればいいのですが・・・。(1)どんなファイルでもそうなりますか?ファイルの文字コードがちょっと気になりますね。UTF8ならBOMの有無も気にしてみるといいかもしれません。22:31ありがとうございます。vbはだめですが、xsdやxscは大丈夫でした。http://blog.shibayan.jp/entry/20130529/1369816283を参考に.gitattributesの「*text=auto」の行を消してもだめでした。保存しなくても変更した時点で全部変更した扱いになるので、「未変更のものと比較」で使用される差分ツールがおかしい気もします。更新順0原因はバイナリだと思われてるからだと思うんですが、契機が謎ですね。最初の方に漢字があるとかかな。-diffが無いか確認してあったら削除。+diffを追加してみるといいかもしれません。属性のバイナリファイルの特定のところですね。(0)奥が深いですね・・。-diff試してみましたが残念ながら変化ありませんでした。したら改行が問題なのかもしれないと思いだしました。12:59ウォッチこの質問への回答やコメントをメールでお知らせします。