Итак, у меня есть git репозиторий, который я написал на С++, но github настаивает на том, что я использую D. Почему это и есть где-то, чтобы исправить это?
Github неправильно распознает язык программирования, используемый в проекте
Ответ 1
Github использует его собственный модуль синтаксического анализа языка, а иногда (фактически часто) он вызывает ошибки. Просто напишите больше кода, чтобы упростить для парсера выбор основного языка, и через некоторое время github вернет его.
В этом конкретном случае парсер кода обманывается вашими файлами в STMC-C/Assignments/a*
dirs с расширением .d
. Это расширение для источников D. Количество этих источников доминировало в вашем проекте, поэтому github решил, что основным языком программирования является D.
edit: просто нашел этот публичный репо (детектор языка github) - он имеет некоторые пояснения к системе.
Ответ 2
Вы можете создать файл .gitattributes
, чтобы настроить GitHub Linguist переопределять.
Чтобы настроить файлы C++ для обнаружения как C++ по расширению:
*.h linguist-language=C++
*.cpp linguist-language=C++
Чтобы игнорировать сгенерированные файлы и не показывать их в diffs:
generated/*.d linguist-generated=true
Кроме того, вы можете пометить некоторые файлы как необнаружимые, если язык отсутствует в списке известных языков :
*.t linguist-detectable=false