GitHub Pages のリポジトリメタデータ
GitHub Pages は、GitHub Free のパブリックリポジトリ、GitHub Pro のパブリックおよびプライベートリポジトリ、GitHub Team、GitHub Enterprise Cloud、GitHub Enterprise Server で利用いただけます。
プロジェクト名や説明といった一般的なリポジトリ情報は、GitHub Pages でホストする Jekyll サイトにあります。
使い方
リポジトリメタデータは、site.github
名前空間の Jekyll サイトの設定に対して公開されます。
簡単に述べると、site.github
の付いたキーの前に、_config.yml ファイルにある他のサイト設定値での必要に応じて、次のキーのいずれかを参照します。
たとえば、プロジェクトの名前を一覧表示するには `The project is called
{{ site.github.project_title }}
` というように記述します。あるいは、Organization のオープンソースリポジトリを一覧表示するには次のようにします:
{% for repository in site.github.public_repositories %}
- [{{ repository.name }}]({{ repository.html_url }}) {% endfor %}
リポジトリメタデータをローカルで使用する
site.github
名前空間をローカルで再作成するには、最新バージョンの GitHub Pages Gem をインストールしてあり、サイトの _config.yml
ファイルに次の行が含まれているようにします:
repository: <ユーザ名>/<プロジェクト>
メタデータフィールドの中には、ブランチ名など、追加の認証を必要とするものがあります。 GitHub Metadata プラグインドキュメントに従い、個人のアクセストークンを作成して、 public_repo
スコープを選択 (ステップ 5) することにより、適切な資格情報を入力します。
使用可能なリポジトリメタデータ
メモ: 最新の依存関係バージョン については「GitHub Pages依存関係バージョン」を参照してください。
site.github
名前空間の Jekyll テンプレートに公開されている情報のサンプルを次に示します:
{
"versions": {
"jekyll": <version>,
"kramdown": <version>,
"liquid": <version>,
"maruku": <version>,
"rdiscount": <version>,
"redcarpet": <version>,
"RedCloth": <version>,
"jemoji": <version>,
"jekyll-mentions": <version>,
"jekyll-redirect-from": <version>,
"jekyll-sitemap": <version>,
"github-pages": <version>,
"ruby": <version>"
},
"hostname": "github.com",
"pages_hostname": "github.io",
"api_url": "https://api.github.com",
"help_url": "https://help.github.com",
"environment": "dotcom",
"pages_env": "dotcom",
"public_repositories": [ リポジトリオブジェクト ],
"organization_members": [ ユーザオブジェクト ],
"build_revision": "cbd866ebf142088896cbe71422b949de7f864bce",
"project_title": "metadata-example",
"project_tagline": "A GitHub Pages site to showcase repository metadata",
"owner_name": "github",
"owner_url": "https://github.com/github",
"owner_gravatar_url": "https://github.com/github.png",
"repository_url": "https://github.com/github/metadata-example",
"repository_nwo": "github/metadata-example",
"repository_name": "metadata-example",
"zip_url": "https://github.com/github/metadata-example/zipball/gh-pages",
"tar_url": "https://github.com/github/metadata-example/tarball/gh-pages",
"clone_url": "https://github.com/github/metadata-example.git",
"releases_url": "https://github.com/github/metadata-example/releases",
"issues_url": "https://github.com/github/metadata-example/issues",
"wiki_url": "https://github.com/github/metadata-example/wiki",
"language": null,
"is_user_page": false,
"is_project_page": true,
"show_downloads": true,
"url": "http://username.github.io/metadata-example", // (または CNAME)
"baseurl": "/metadata-example",
"contributors": [ ユーザオブジェクト ],
"releases": [ リリースオブジェクト ],
"latest_release": [ リリースオブジェクト ],
"private": false,
"license": {
"key": "mit",
"name": "MIT License",
"spdx_id": "MIT",
"url": "https://api.github.com/licenses/mit"
},
"source": {
"branch": "gh-pages",
"path": "/"
}
}
リポジトリオブジェクトとユーザオブジェクトのコンテンツの詳しい情報については、その API エンドポイントを参照してください。