svn diff:バイナリタイプとしてマークされたファイル


82

私はsvn diff自分のファイルの1つでを実行していて、svnはそれをバイナリ型として検出しています。ファイルは読み取り可能なプレーンテキストであり、このファイルの差分を取得できるようにしたいと思います。これがバイナリファイルではないことをSVNに伝えるにはどうすればよいですか?

Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

回答:


81

Subversionプロパティsvn:mime-typeを使用して、ファイルに明示的なmimetypeを設定できます。

svn propset svn:mime-type'text / plain ' path / to / file

または、次を使用してこのプロパティを削除できます(Subversionはプレーンテキストを想定しているため)。

svn propdel svn:mime-type path / to / file

4
しかし、そもそもなぜバイナリとしてマークされたのでしょうか。多くのソースファイルで同じ問題が発生しており、毎回プロパティを削除するのは面倒です。
angularsen

別の質問をする必要があるようです...そして多分ここにリンクを追加してください。
エリックウィルソン


これ(ファイルのmimeタイプの変更)は、誰かがsvnから新しいコピーをチェックアウトするときのファイルの実行方法を変更しますか?このような場合、差分を表示するためだけに--forceオプションを使用する方が理にかなっていると思います。
リシ2014年

@Rishi、いや、そうではない。ファイルに実行可能許可ビットが必要かどうかを決定する別の「svn:executable」プロパティがあります。
Michael Aaron Safyan 2014年

115

を使用すると、バイナリとしてマークされたファイルでも差分を取得できます--force

svn diff --force path/to/file


5
これは、application / jsonのようなものに対してはるかに良い答えです
Steven R. Loomis

2
@BrettZamirですが、出力のあるほとんどすべてのもので実行できます。
entonio 2014年

1
@entonio:はい、わかっています... GUIクライアントを使用してこのエラーが発生し、私が知る限り解決できなかったので、指摘する必要があると思いました。コマンドラインにこれ​​を通知できます。
ブレットザミール2014年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.