LoginSignup
22
16

More than 5 years have passed since last update.

GitHubによる主要認識言語を切り替える

Posted at

ありがたいことに、GitHubの無料ユーザーでも、プライベートリポジトリを無制限に使えるようになった。

ということでGitのImport機能を使って、Bitbucketから順次お引越し。
その中で幾つかGit側でリポジトリの主要言語が誤って認識されたので、訂正方法をメモ。

と言っても、GitHubが言語認識に用いているライブラリ(github/linguist)のTroubleshooting、Overridesを参照しただけだけれども。

前提

  • リポジトリ内部の統計バーをクリックすると、GitHub側が認識している言語統計を見ることができる(知らなかった)
  • 言語認識がうまくいかない場合は幾つか要因が考えられる
    • Linguistがその言語自体を扱っていない
    • 依存するファイル・ライブラリが直接置かれている
    • 拡張子がlanguages.ymlと紐づいていない
    • 本来除外されるはずのドキュメントが統計対象となっている

test.png

依存するHTMLファイルが大量に存在するので、JavaScriptではなくHTMLが主要言語だと判定されてしまっている。

解決策

Vim/Emacs modelineファイルを使う方法もあるようだが、.gitattributesファイルの作成のほうで解決する。(主要なのはどちらだろう)
そして下記を参考に記述。.gitignoreみたいなものか。

*.ext linguist-language=Java  # ".ext"の拡張子をJavaとして検出

folder/* linguist-vendored  # vendored codeとして認識
file.js linguist-vendored=false  # vendored codeから除外

folder/* linguist-documentation  # documentationとして認識
file.rb linguist-documentation=false  # documentationから除外

documentation扱いとすることで言語統計からは除外される。
またvendored code扱いとすることで統計から除外され、さらにGitHubのdiffからも対象外となる。

スクリーンショット 2019-01-08 11.53.21.png

ということで無事JavaScript:100%となった。

22
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
16