2013-06-23 4 views
19

Итак, у меня есть git repository, который я написал на C++, но github настаивает на том, что я использую D. Почему это и есть где-то, чтобы исправить это?Github неправильно распознает язык программирования, используемый в проекте

+5

+1 Мне всегда было интересно, почему/как GitHub ошибается. –

+0

Где именно это сказано? – Nawaz

+0

@Nawaz, если у вас есть новый github, он будет отображаться как большая желтая полоса на странице. Нажмите на него, и он скажет D 98.9% – Loourr

ответ

12

Github использует собственный модуль синтаксического анализа языка, а иногда (фактически часто) он вызывает ошибки. Просто напишите больше кода, чтобы упростить для парсера выбор основного языка, и через некоторое время github вернет его.

В этом конкретном случае анализатор кода обманут вашими файлами в STMC-C/Assignments/a* dirs с расширением .d. Это расширение для источников D. Количество этих источников доминировало в вашем проекте, поэтому github решил, что основным языком программирования является D.

Редактировать: только что найдено this public repo (github language detector) - в нем есть некоторые объяснения системы.

+0

, что имеет смысл, хотя кажется глупым, потому что есть значительно больше файлов с расширениями '.cpp', а поскольку проект состоит из нескольких тысяч строк исключительно кода на C++, я не уверен, есть что-то по этому поводу. – Loourr

+8

@Loourr Простой поиск/cat/wc показывает, что ваши '.d' - это 160259 строк в вашем репозитории, из общего числа 163404. У вас есть 8 '.d' файлов, каждый из которых состоит из 20000 строк, что значительно больше, чем ваш код на C++. (Да, я понимаю, что эти '.d' файлы не содержат кода.) – hvd

+3

@hvd хорошая точка, я думаю, что я сделаю, просто добавьте их все в мой файл' .gitignore', потому что все компьютер все равно – Loourr