从 GitHub 页 JavaScript 确定回购和发布来源
Determine repo and publishing source from GitHub Pages JavaScript
我正在努力实现 Staticman 的目标:GitHub 页面上的静态网站可以使用 javascript 和 GitHub API 以便提交到它所基于的存储库,从而有点像一个非静态站点。
访问底层存储库显然需要该存储库的名称。我 可以 对此进行硬编码,但这并不理想,因为我打算 fork/clone 这个存储库,并且我必须在每个 fork 中更改该硬编码。
所以我想知道 JavaScript 在 GitHub 页面网站中是否有某种方法可以自动确定它是从哪个存储库构建的。或者,也可以使用 Jekyll 在静态站点构建期间插入存储库名称。
您可以使用 {{ site.github.repository_nwo }}
来获得 <username>/<reponame>
(名称与所有者)或 {{ site.github.repository_name }}
来获得 <reponame>
。这些 Jekyll 变量来自 Github Metadata plugin, which exists by default on Github Pages. The relevant part of the documentation is here.
您似乎需要整个存储库 URL,可以使用 {{ site.github.repository_url }}
提取它。该插件还提供 {{ site.github.clone_url }}
(repositoryURL + ".git") 这是 URL 如果它是空的,你可以从中克隆 repo。
我正在努力实现 Staticman 的目标:GitHub 页面上的静态网站可以使用 javascript 和 GitHub API 以便提交到它所基于的存储库,从而有点像一个非静态站点。
访问底层存储库显然需要该存储库的名称。我 可以 对此进行硬编码,但这并不理想,因为我打算 fork/clone 这个存储库,并且我必须在每个 fork 中更改该硬编码。
所以我想知道 JavaScript 在 GitHub 页面网站中是否有某种方法可以自动确定它是从哪个存储库构建的。或者,也可以使用 Jekyll 在静态站点构建期间插入存储库名称。
您可以使用 {{ site.github.repository_nwo }}
来获得 <username>/<reponame>
(名称与所有者)或 {{ site.github.repository_name }}
来获得 <reponame>
。这些 Jekyll 变量来自 Github Metadata plugin, which exists by default on Github Pages. The relevant part of the documentation is here.
您似乎需要整个存储库 URL,可以使用 {{ site.github.repository_url }}
提取它。该插件还提供 {{ site.github.clone_url }}
(repositoryURL + ".git") 这是 URL 如果它是空的,你可以从中克隆 repo。