颠覆中适当的mime类shell脚本

Tro*_*els 10 svn shell mime-types

当我将shell脚本(foo.sh)添加到subversion时,默认设置为svn:mime-typeto application/x-shellscript.由于这不是从一开始text/,diff和blame基本上忽略了该文件.我查看了正式的文本mime-types列表,但没有看到任何看起来像shell脚本的东西.

是否有很好的价值来设置它?

更新

按照下面的建议,我将mime-type设置为text/x-shellscript.但是,责备仍然认为它是一个二进制文件.

$ svn blame file.sh 
Skipping binary file: 'file.sh' 
$ svn proplist file.sh 
Properties on 'file.sh':
  svn:executable
  svn:mime-type 
$ svn propget svn:mime-type file.sh
 text/x-shellscript
Run Code Online (Sandbox Code Playgroud)

还有什么我需要做的来说服颠覆它是一个文本文件吗?

nos*_*sid 10

file实用程序对shell脚本使用`text/x-shellscript':

$ file --mime-type /tmp/test.sh
/tmp/test.sh: text/x-shellscript
Run Code Online (Sandbox Code Playgroud)

  • 有帮助,但只是为了澄清:是否返回“text/x-shellscript”完全取决于相关文件的_shebang line_,而不是其文件名后缀(“.sh”)(如果有)。简而言之:shebang 行必须是 `#!/bin/(sh|bash|csh|tcsh|ksh|zsh)` (表示为正则表达式;不确定是否还有更多);请注意,基于 `#!/usr/bin/env ` 的 shebang 行无法被识别。如果不满足这些条件并且文件是文本文件,则返回“text/plain”。 (2认同)