You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已配置linguist-vendored属性,github-linguist仍统计供应商代码如何解决

问题原因

主要有两个核心原因导致配置生效但统计结果不符合预期:

  1. 路径匹配写法兼容性问题:你使用的[[:space:]]POSIX字符类匹配空格,在Linguist自身的路径解析逻辑中兼容性不足,即使git check-attr能识别该规则,Linguist也可能无法正确匹配带空格的路径。
  2. 本地Linguist运行参数错误:默认运行github-linguist不会读取Git提交中存储的.gitattributes属性配置,仅使用默认统计规则,所以你看到的结果是未应用自定义规则的统计数据。

解决步骤

1. 修正.gitattributes规则

将空格匹配改为更通用的反斜杠转义写法,保证Linguist可以正确识别路径:

# 标记整个STM32 Code目录为供应商代码,默认排除统计
STM32\ Code/** linguist-vendored
# 保留自己编写的Core目录代码参与统计
STM32\ Code/*/Core/Src/** -linguist-vendored
STM32\ Code/*/Core/Inc/** -linguist-vendored

2. 提交配置到仓库

确保修改后的.gitattributes已经提交到当前分支的HEAD版本:

git add .gitattributes
git commit -m "调整Linguist统计规则"

3. 正确运行本地统计命令

添加--rev HEAD参数,强制Linguist读取当前HEAD提交中的Git属性配置进行统计:

github-linguist --rev HEAD --breakdown

额外说明

如果是GitHub官网的仓库统计显示异常,在提交配置后需要等待最长几小时的缓存刷新时间,统计结果才会更新。

内容的提问来源于stack exchange,提问作者unknownperson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 03:15:02