为单个 github 页网站使用 n github 个存储库?

Using n github repositories for a single github-page website?

我正在编写一个位于 2 github 个存储库上的网站:WEBSITE.git(2MB 或 2%)和 AUDIO.git(98MB = 98%)。我按如下方式部署它:

git clone https://github.com/<user>/WEBSITE.git
mkdir -p ./audio ./audio/cmn;
git clone https://github.com/<user>/AUDIO.git ./audio/

部署后的结构如下:

|- /html/<files>
|- /css/<files>
|- /js/<files>
|- /audio/<AUDIO.git's files>

存储库 AUDIO 是来自动态开源项目的项目权重 (100MB) 的 98%,WEBSITE 是我的 2% 的代码。

当然,当我将 git checkout --orphan gh-pages 添加到 WEBSITE.git 时,gh-pages http(s)://<user>.github.io/WEBSITE/ 网站可以正常运行但没有音频。一切如我们所料。

我需要音频才能正常工作,简单的方法是将这些音频完全集成到 WEBSITE.git。但是我非常不愿意将这样的 大文件 添加到它的 git 历史记录中,因为它会使我的 html/css/js 存储库的权重显着增加 50 倍。这很重要,因为我'我正在与互联网连接非常低的开发人员合作。

我该如何处理?是否有一些秘密黑客将外部 github 存储库集成到 gh-pages 文件结构?(将 AUDIO.git 插入 http(s)://.github。 io/MYSITE/audio/ )

Git中心页面

自 2017 年以来,用户 Configuring a publishing source for GitHub Pages 来自 github 的设置。

Git 个子模块

# Get project
git clone "https://github.com/<user>/WEBSITE.git"  # clone your project
cd ./WEBSITE/                                      # move in
## Add submodule to target folder
git submodule add -- "https://github.com/<user>/AUDIO.git" "./audio/" 
## Commit changes 
git commit -am "dev,git: add submodule https://github.com/<user>/AUDIO.git" 
git push
## Update/Install submodules locally
git submodule update --init --recursive

克隆和更新存储库

克隆存储库 git 1.6.5+ 的子模块:

git clone --recursive git://github.com/foo/bar.git
cd bar

对于 Github 页,您可以简单地执行以下操作:

主网站

托管于 github.com/userName/username.github.io。最终有了 custom domain name.

使用 username.github.io 或自定义域名访问。

音频文件

托管于 github.com/userName/audio

达到 username.github.io/audio

本地发展

主站点可以 .gitignore 音频文件夹,它本身托管音频存储库。 这将复制在线文件夹层次结构。