ตามที่ระบุไว้ในหน้าความช่วยเหลือของ GitHub
GitHub ใช้ไลบรารี Linguist แบบโอเพนซอร์สเพื่อกำหนดภาษาไฟล์สำหรับการเน้นไวยากรณ์และสถิติที่เก็บ
ไฟล์บางไฟล์ระบุได้ยากและบางครั้งโปรเจ็กต์จะมีไลบรารีและไฟล์ผู้ขายมากกว่าโค้ดหลัก
ดังนั้นคุณต้องตรวจสอบด้วยgithub/linguist#troubleshooting
เพื่อแก้ไขสถานการณ์นี้
เปอร์เซ็นต์จะคำนวณตามไบต์สำหรับแต่ละภาษาตามที่รายงานโดยที่รายการภาษา API
หากแถบรายงานภาษาที่คุณไม่คาดคิด:
- คลิกที่ชื่อภาษาในแถบสถิติเพื่อดูรายการไฟล์ที่ระบุว่าเป็นภาษานั้น
- หากคุณเห็นไฟล์ที่คุณไม่ได้เขียนให้ลองย้ายไฟล์ไปไว้ในเส้นทางใดเส้นทางหนึ่งสำหรับรหัสที่จำหน่ายหรือใช้คุณลักษณะการลบล้างด้วยตนเองเพื่อเพิกเฉย
- หากไฟล์ถูกจัดประเภทผิดให้ค้นหาปัญหาที่เปิดอยู่เพื่อดูว่ามีใครรายงานปัญหานี้แล้วหรือไม่ ข้อมูลใด ๆ ที่คุณสามารถเพิ่มโดยเฉพาะลิงก์ไปยังที่เก็บสาธารณะจะเป็นประโยชน์
- หากไม่มีรายงานปัญหาเกี่ยวกับการจัดประเภทที่ไม่ถูกต้องนี้ให้เปิดปัญหาและรวมลิงก์ไปยังที่เก็บหรือตัวอย่างรหัสที่มีการจัดประเภทผิด
อัปเดตเดือนกุมภาพันธ์ 2017 (หนึ่งปีต่อมา):
บทความ " วิธีเปลี่ยนภาษา Repo ใน GitHub " จากMonica Powell
จากการค้นคว้าวิธีแก้ไข GitHub ที่ระบุภาษาของโครงการของคุณไม่ถูกต้องฉันพบว่าวิธีแก้ปัญหานั้นง่ายมากเพียงแค่บอก GitHub ว่าจะละเว้นไฟล์ใด
ในขณะที่คุณยังต้องการส่งไฟล์เหล่านี้ไปยัง GitHub ดังนั้นจึงไม่สามารถใช้ไฟล์ได้.gitignore
คุณสามารถบอกนักภาษาศาสตร์ของ GitHub ว่าไฟล์ใดที่จะละเว้นใน.gitattributes
ไฟล์
static/* linguist-vendored
ไฟล์บรรทัดเดียวนี้บอกให้ GitHub ละเว้นไฟล์ทั้งหมดในstatic/
โฟลเดอร์ของฉันซึ่งเป็นที่เก็บ CSS และทรัพย์สินอื่น ๆ สำหรับแอป Flask
ส่วน"การใช้.gitattributes
"จะแสดงวิธีการทำเครื่องหมายภาษาที่ไม่ถูกต้อง
ตัวอย่างเช่น:
การตรวจสอบรหัสคุณไม่ได้เขียนเช่นห้องสมุด JavaScript, เข้า repo คอมไพล์ของคุณเป็นหลักปฏิบัติทั่วไป แต่นี้มักจะพองสถิติภาษาโครงการของคุณและอาจยังทำให้โครงการของคุณจะได้รับการระบุว่าเป็นภาษาอื่น
ตามค่าเริ่มต้น Linguist จะถือว่าเส้นทางทั้งหมดที่กำหนดไว้ในvendor.yml
เป็น vendored ดังนั้นจึงไม่รวมไว้ในสถิติภาษาสำหรับที่เก็บ
ใช้แอ็ตทริบิวต์ผู้จัดจำหน่ายด้านภาษากับเส้นทางผู้ขายหรือผู้ขาย
$ cat .gitattributes
special-vendored-path/* linguist-vendored
jquery.js linguist-vendored=false