我知道这不是一个大问题,但我喜欢我的Github在语言上多元化.我在Swift中编写了一个项目,当我提交时,它表示它在Objective C中.
我想这可能是因为Parse框架是用Objective C编写的,它检测到了,但有没有办法改变主存储库页面上的显示语言?
我发现最简单的事情是在我的存储库的根文件夹中创建一个名为.gitattributes的文件,并给它们这些内容:
* linguist-vendored *.js linguist-vendored=false
这个例子告诉github/linguist忽略所有文件,然后只看一下.js文件.我的项目https://github.com/aim12340/jQuery-Before-Ready被列为HTML,因为HTML示例文件比JS文件大.这个文件为我修复了,现在它被列为JavaScript
如GitHub帮助页面中所述
GitHub使用开源Linguist库来确定语法高亮和存储库统计信息的文件语言.
某些文件很难识别,有时项目包含的库和供应商文件多于其主要代码.
因此,您需要检查github/linguist#troubleshooting
以解决这种情况.
百分比是根据List Languages API报告的每种语言的代码字节计算的.
如果该栏报告您不期望的语言:
单击统计栏中的语言名称,以查看标识为该语言的文件列表.
如果您看到未编写的文件,请考虑将文件移动到销售代码的其中一个路径中,或使用手动覆盖功能忽略它们.
如果文件被错误分类,请搜索未解决的问题以查看是否有其他人已报告此问题.您可以添加的任何信息,尤其是公共存储库的链接,都是有帮助的.
如果没有报告此错误分类的问题,请打开一个问题并包含指向存储库的链接或错误分类的代码示例.
2017年2月更新(一年后):
莫妮卡鲍威尔的文章" 如何改变GitHub中的回购语言 "
在研究如何解决GitHub错误分类项目语言时,我发现解决方案就像告诉GitHub要忽略哪些文件一样简单.
虽然您仍然希望将这些文件提交给GitHub,因此无法使用,
.gitignore
您可以告诉GitHub的语言专家在文件中忽略哪些.gitattributes
文件
static/* linguist-vendored
这个单行文件告诉GitHub忽略我文件
static/
夹中的所有文件,这是为Flask应用程序存储CSS和其他资产的地方
在"使用.gitattributes
"部分确实说明了如何标记错误的语言.
例如:
将您未编写的代码(例如JavaScript库)检查到您的git仓库中是一种常见做法,但这通常会夸大您项目的语言统计信息,甚至可能导致您的项目被标记为另一种语言.
默认情况下,Linguist会将所有路径定义vendor.yml
为vendored,因此不会将它们包含在存储库的语言统计信息中.将linguist-vendored属性用于供应商或非供应商路径.
$ cat .gitattributes special-vendored-path/* linguist-vendored jquery.js linguist-vendored=false
为简单起见,让我分享一下我的步骤:
将目录更改为项目根文件夹;
使用您选择的whaterver工具创建名为.gitattributes的文件:
触摸.gitattributes
按照Linguist库的说明编辑文件,告诉Github如何操作,例如:
vi .gitattributes
使用linguist-vendored可以让Github"跳过"检测这个文件夹和子文件夹:
src/main/resources/static/* linguist-vendored
使用linguist-documentation属性将路径标记或取消标记为文档:
project-docs/* linguist-documentation
或标记包含文档的单个文件
documented_code.rb linguist-documentation=true
这有点奇怪,但你也可以这样做 - 告诉Github将一些具有特定扩展名的文件(例如*.rb)视为Java:
*.rb linguist-language=Java
Git添加,提交然后将其推送到Github,标签几乎会立即得到纠正.
以此替换您的.gitattributes,它将所有文件重新分类为Java。
*.* linguist-language=Java
语言学家
在文件夹的根目录中创建.gitattributes文件。假设您希望该语言为Java,只需复制粘贴即可
*.java linguist-detectable=true
*.js linguist-detectable=false
*.html linguist-detectable=false
*.xml linguist-detectable=false
在.gitattributes文件中将其推送到仓库中,刷新GitHub页面以查看语言更改。
注意:因此,对于所需的语言,请使其为true,其他为false。应该可以正常工作