适用于补丁文件的mime类型

时间:2011-03-01 22:03:32

标签: svn mime-types patch

有人知道补丁文件的“正确”mime类型是什么吗?我一直在使用application / octet-stream,因为我在iana.org看不到任何更好的东西。 application / octet-stream是正确的,还是还有其他适合更好的东西?为什么没有application/patch类型?

显然,一个可能的答案是text/plain,但我看到很多补丁文件包含的数据不是纯文本。如果您知道所有内容都是文本,或者最好是在所有补丁文件中保持一致,那么text/plain是最佳选择吗?

我应该说我主要考虑的上下文是将mime-type设置为关于处理行结尾(svn:mime-typesvn:eol-style)的颠覆的线索。问题是补丁文件可能会修补使用eol-style native以及non-native的文件,这可能会导致在结帐后应用补丁时出现行尾怪异。

3 个答案:

答案 0 :(得分:9)

我也找不到权威版本。以下是其他一些可能性:

  • text/x-diff
  • text/x-patch
  • application/x-patch

对于它的价值,Trac(具有良好svn支持的票证跟踪器)使用text/x-patch进行差异。 git.kernel.orgGitHub使用text/plain

答案 1 :(得分:1)

如果您的补丁仅包含文字,我希望text/plain优先于text/x-patchtext/x-diff。 IMO,text/x-patch-diff更适合此目的,some projects推荐,但text/plain的主要原因是兼容性。

在Gmail中,如果附件是text/plain,当您点击它时,它会自动弹出文档预览;但它不适用于text/x-patchtext/x-diff。另一个例子是Mailman(一种流行的邮件列表管理软件)的归档界面:shows the text text/plaindoes not text/x-patch

如果您的补丁包含二进制数据,我会使用application/octet-stream,而不是因为它是正确的,但它会为您在行结尾时省去一些麻烦。

答案 2 :(得分:0)

我很好奇为什么要将补丁文件签入SVN。除此之外,我会假设你有可能检查二进制补丁文件以使用application / octet-stream。 我不确定如果你把它们混合起来会发生什么......文本的文本,二进制的八位字节...这也可能吗?