我是Git的新手,正在尝试将本地分支推送到Github上的远程目录。我的项目是在Matlab上进行的,所以文件的扩展名是.m。它们自然不会显示任何objective-c语言模式。我甚至检查了一些.mat文件。但它们被错误地归类为Objective-C文件。
我想知道:
-
推送后,我们可以直接在Github中修改语言吗?如果它很容易找到,我很抱歉,但我真的找不到。
-
我发现其他人的Matlab项目可以正确分类,只需扩展.m。有些人还提到,如果你用matlab扩展名命名文件,它很容易被识别为matlab语言,但这不是一个干净的解决方案。我想知道,文件可以被识别为扩展名为.m的matlab的标准是什么,或者只是为了增加被识别为matlab语言的机会。我注意到有些人只是在文件名中添加了matlab,但没有添加的人也成功了。
我已经向Github发送了一封电子邮件寻求帮助。他们回答了第一个问题:答案是否定的。
GitHub根据属于每种语言的文件的总大小来确定语言。我们使用语言学家库来分析源代码文件:https://github.com/github/linguist
我想这与webapps堆栈交换中的问题相同:https://webapps.stackexchange.com/questions/31654/force-github-syntax-highlighting-language-on-source-files
似乎要做到这一点的方法是从模棱两可的.m扩展改为matlab,尽管作者并不喜欢它。。。
现在可以使用Linguist覆盖来覆盖Linguist的检测结果。特别是,您可以在存储库中使用.gitattributes
文件:
*.m linguist-language=Objective-C
注意:如果您在本地进行检查,则需要提交.gitattributes
文件才能看到效果。