如何使用.gittributes让Github显示正确的回购主语言?

如何使用.gittributes让Github显示正确的回购主语言?,git,github,gitattributes,github-linguist,Git,Github,Gitattributes,Github Linguist,我用Python编写了一个程序,并使用Bootstrap作为其前端 当我在GitHub上上传目录时,它显示项目是90%的JavaScript,只有7.5%的Python。我知道这是因为Bootstrap文件夹中的JS目录 我需要将Python显示为repo的主要项目语言 我做了一点研究,了解到将文件.gittributes添加到项目中是一个解决方案,但我不知道在评估项目的主要语言时,在该文件中添加什么来让Github忽略JavaScript 我查看了,但找不到这个问题的直接解决方案 回购协议是这

我用Python编写了一个程序,并使用Bootstrap作为其前端

当我在GitHub上上传目录时,它显示项目是90%的JavaScript,只有7.5%的Python。我知道这是因为Bootstrap文件夹中的JS目录

我需要将Python显示为repo的主要项目语言

我做了一点研究,了解到将文件
.gittributes
添加到项目中是一个解决方案,但我不知道在评估项目的主要语言时,在该文件中添加什么来让Github忽略JavaScript

我查看了,但找不到这个问题的直接解决方案

回购协议是这样的


编辑:所有CSS和JS文件都在
static/
文件夹中,因此我在repo中添加了一个
.gittributes
文件,并在第一行添加了
static/*languator vendored
,然而,repo仍然显示JS占语言的90%。

官方的
gittributes
文档不会对此做任何说明,因为它是GitHub特有的特性。Git本身不做语言统计

GitHub使用一种称为语言学家的工具进行语言统计,语言学家:

将未编写的代码(如JavaScript库)检查到git repo中是一种常见做法,但这通常会增加项目的语言统计数据,甚至可能导致项目被标记为另一种语言。默认情况下,语言学家将中定义的所有路径视为供应商路径,因此不会将它们包含在存储库的语言统计信息中

语言学家vendored
属性用于供应商或非供应商路径

$ cat .gitattributes
special-vendored-path/* linguist-vendored
jquery.js linguist-vendored=false
请注意,此更改的影响:

当您将更改推送到GitHub.com上的存储库时,一个低优先级的后台作业将排队分析您的存储库,如上所述。此分析的结果将在存储库的生命周期内缓存,并且仅在更新存储库时更新。由于此分析由低优先级后台作业执行,因此您的语言统计栏可能需要一段时间才能反映您的更改,特别是在繁忙期间


更改
.gittributes

后,给GitHub一两天的时间,让它赶上进度-这有什么帮助吗?或者说:您好,谢谢您的回复!所有css和js文件都在静态文件夹中,即使在.gitignore中添加了
static/*language vendored
作为第一行,repo仍然显示js占项目语言的90%。我从这个页面获得了帮助,我也在浏览你的链接。你的最后一行是
*.js语言学家vendored=false
,所以所有JavaScript文件都将被统计。我想你想要
*.js语言学家vendored
。您可以删除前两行。可能重复感谢您的回复克里斯。我将上面代码块的最后2行添加到了我的.gittributes文件中,它仍然没有改变任何东西。这是文件看起来像atm@EshaanSharma,请看我刚才添加到我答案中的注释。还请注意,我给出的例子直接来自语言学家的文档;您可能不需要在您的回购中使用
特殊的卖方路径/*语言学家卖方
。明白了。谢谢你的帮助@埃沙恩沙玛,不客气。一旦你的语言统计数据得到修复,请记得回来,如果它解决了你的问题。嘿@Chris,解决方案是只添加一行--
*.js语言学家在
.gittributes
中添加了
,更改会立即反映出来。repo现在将
Python
作为主要语言。无论如何,谢谢你的投入。