Mam repozytorium z kodem Ruby i PHP.
Github mówi, że moje repo to 74,8% PHP i 25,2% Ruby
Nie rozumiem, jak to może być. Kiedy porównuję 2 języki w moim projekcie:
# Count how many files:
# Ruby
ls | grep ".*\.rb" | wc -l
# returns 10
#PHP
ls | grep ".*\.php" | wc -l
# returns 1
# Count how many lines, words, chars:
# Ruby
cat *.rb | wc
# returns 229, 812, 5303
# PHP
cat *.php | wc
# returns 102, 473, 2760
Ruby zawsze wydaje się mieć więcej.
Czy coś brakuje?
Odpowiedzi:
github używa Linguist do wykrywania języków w projekcie.
Lingwista jest oprogramowaniem typu open source. zajrzyj do plików źródłowych, a znajdziesz:
w
/bin/linguist
w
/lib/linguist/file_blob.rb
więc faktycznie używa rozmiarów plików, aby określić procent języka.
należy również pamiętać, że dane binarne, pliki sprzedawane, pliki generowane i pliki nieprogramowe są wykluczone.
źródło