$mol
搜索
⌘ K
文档
演练场
对比
生态系统
关于
ZH
部署
Getting Started
介绍
心智模型
快速上手
从 TypeScript 到 view.tree
项目结构
工具链
Essentials
安装
视图
状态与响应式
路由
渲染
测试
部署
故障排查
Data
数据获取
数据模式
Giper Baza
More
展示
来自 React、Vue 和 Svelte
食谱
Advanced
插件
模块元数据
离线
幽灵视图
About
常见问题
团队
发布
API
$mol_button_major
$mol_button_minor
$mol_string
$mol_number
$mol_text
$mol_paragraph
$mol_list
$mol_row
$mol_link
$mol_check
$mol_switch
$mol_select
$mol_scroll
$mol_page
$mol_pick
部署
构建好的 $mol 应用就是一个静态文件目录。没有服务要跑,没有 Node 进程要守着,也没有适配器要挑:能托管一个目录的地方,就能托管这个应用。
你部署的到底是什么
构建把所有东西写进模块里的
-
/
目录:
1
my
/hello/
-
/
2
├──
index
.
html
按部署路径重写过
3
├──
web
.
js
整个应用,一个文件
4
├──
web
.
css
5
├──
web
.
locale
=
en
.
json
每种语言一个
6
├──
manifest
.
json
7
└── …
`deploy`
指令拷进来的任何东西
这个目录就是网站。用任何静态托管把它发出去,应用就跑起来了。
my
/hello/
里的其他东西都是源码,而
-
/
是生成的:工作区的
.
gitignore
忽略
-
*
,所以构建产物从不进入项目自己的历史。它是从部署分支上网的。
最短的版本
脚手架会写好工作流,所以新项目一推送就发布:
1
npx
create
-
view
-
tree
-
lsp
my
/
hello
2
git
push
.
github
/
workflows
/
deploy
.
yml
构建模块,并把
my
/hello/
-
/
推到
gh
-
pages
分支。只要
Settings → Pages → Source
是
Deploy from a branch
并选中
gh
-
pages
,GitHub 就会提供这个分支——而对已经有该分支的仓库来说,这正是默认值。如果地址返回 404,先查这一项。
之后网站就住在
https://<user>.github.io/<repo>/
。
工作流到底做了什么
两个 action 撑起全部,各自只要几个输入:
1
-
uses
:
hyoo
-
ru
/
mam_build
@
master2
2
with:
3
package:
"my/hello"
# 要构建的目录,相对工作区
4
modules:
"app"
# 其中的哪些模块
5
6
-
uses
:
hyoo
-
ru
/
gh
-
deploy
@
v4
.4
.1
7
if:
github
.
ref
=
=
'refs/heads/main'
8
with:
9
folder:
"my/hello/app/-"
mam_build
在你的包周围铺开 MAM 工作区,把代码里的
$name
记号解析成存放它们的仓库,然后构建。它不需要 lockfile,也不需要
npm
install
这一步:依赖清单就是
.
meta
.
tree
里的登记表,
项目结构
已经讲过。
gh
-
deploy
把构建好的目录提交到
gh
-
pages
。
target
-
folder
让它落在子目录而不是根目录——分支预览就是这么来的:
1
-
name
:
Deploy
feature
branch
2
if:
startsWith
(
github
.
ref
,
'refs/heads/feature/'
)
3
uses:
hyoo
-
ru
/
gh
-
deploy
@
v4
.4
.1
4
with:
5
folder:
"my/hello/app/-"
6
target-folder:
$
{
{
github
.
ref_name
}
}
于是每个
feature
/
*
分支在同一个 Pages 站点上都有自己的地址,而
delete
触发器会在分支消失时清掉那个目录。
部署离不开的一个文件
在 GitHub 上编辑此页
这有帮助吗?
是
否
上一页
测试
下一页
故障排查
本页内容
你部署的到底是什么
最短的版本
工作流到底做了什么
部署离不开的一个文件
必须待在站点根目录的文件
静态托管上的深链接
推送前先看一眼
不止 GitHub Pages
Type to search the documentation.