忽略 GitHub 中的其他库文件,使它们不会出现在项目的(编程)语言中



解决方案:在git文件夹中创建.gitattributes,并在文件路径后粘贴linguist-languate=text。示例:

/other_libraries/* linguist-language=text
/linguist_ignore.c linguist-language=text

注意:linguist-vendored=false没有解决问题。GitHub仍然检测到标记为C代码的文件。

问题:

我的C++/OpenGL项目是用glad.c编译的,stb_imbage.h包含在mail.cpp文件中。两者都位于包含.git目录的根文件夹中。为了编译项目,这两个文件必须存在,所以我想保留它们。

问题:GitHub对这些文件进行索引,并将它们添加到Language统计中。这是不可取的,因为它不是包含我的代码的文件。

如何让Git跟踪某些文件,但将其从语言中排除?

我曾尝试在GitHub文档中寻找关于Linguist和Stack Overflow的解决方案,但没有成功。

我知道如何使用.gitignore忽略文件。但这不是解决方案,因为被忽略的文件不会被提交。

GitHub使用Linguist库生成语言统计信息。

在https://github.com/github/linguist/blob/master/docs/overrides.md您可以阅读有关使用.gitattributes文件覆盖默认行为的方法。看起来以下部分最适合您的情况:

卖家代码

将你没有写的代码(如JavaScript库)检查到你的git repo中是一种常见的做法,但这通常会使你的项目的语言统计数据膨胀,甚至可能导致你的项目被标记为另一种语言。默认情况下,Linguist将vendor.yml中定义的所有路径都视为vendored,因此不会将它们包含在存储库的语言统计信息中。

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

(以下为示例)

最新更新