Git Pages:如何从其他分支向主分支页面引入脚本等文件
解决Git Pages主分支引用assets分支静态资源的问题
方法1:直接引用raw资源链接
虽然路径和你期望的格式不同,但可以直接在HTML里引用assets分支的文件,格式如下:
<script src="https://raw.githubusercontent.com/omarjuvera/Portfolios/assets/scripts/BackgroundModule.js"></script>
script标签跨域引用一般不会有CORS问题,CSS、图片等资源也能用同样格式引用。
方法2:用Git子树同步到主分支(推荐,匹配你要的路径)
这种方式既能保持两个分支独立,又能让主分支HTML用/assets/scripts/BackgroundModule.js这类路径引用资源:
- 先在主分支执行命令,把assets分支内容同步到主分支的
assets目录:
git subtree add --prefix=assets origin assets
- 后续assets分支更新后,执行以下命令同步到主分支的assets目录:
git subtree pull --prefix=assets origin assets
- 提交主分支变更并推送到GitHub,Git Pages部署完成后,就能用
https://omarjuvera.github.io/Portfolios/assets/scripts/BackgroundModule.js或者相对路径/assets/scripts/BackgroundModule.js引用资源了。
方法3:单独部署assets分支为GitHub Pages站点
如果不想改动主分支,可以把assets分支单独部署成一个Pages站点:
- 进入仓库Settings -> Pages,把Source切换为
assets分支,等待部署完成后会得到对应访问链接。 - 在主分支HTML里引用该链接下的资源,比如:
<script src="https://omarjuvera.github.io/Portfolios/scripts/BackgroundModule.js"></script>
注意:同一个仓库只能有一个GitHub Pages站点,所以主分支和assets分支无法同时部署到同一路径,需要调整部署策略。
内容的提问来源于stack exchange,提问作者Omar Juvera
相关产品推荐
相关产品推荐

