@freelog-cli/cli2 0.5.1 → 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/index.js +516 -379
- package/dist/bin/index.js.map +1 -1
- package/dist/docs/01-/345/277/253/351/200/237/344/270/212/346/211/213.md +83 -81
- package/dist/docs/02-/346/227/245/345/270/270/350/267/257/345/276/204.md +92 -90
- package/dist/docs/03-/344/270/273/351/242/230/344/270/216/346/217/222/344/273/266.md +124 -124
- package/dist/docs/04-/347/211/210/346/234/254/345/267/245/344/275/234/347/250/277.md +108 -78
- package/dist/docs/05-/350/265/204/346/272/220/347/256/241/347/220/206.md +69 -55
- package/dist/docs/06-/345/270/270/350/247/201/346/203/205/345/206/265/344/270/216/346/212/245/351/224/231.md +37 -34
- package/dist/docs/07-/347/216/257/345/242/203/344/270/216/345/207/255/346/215/256.md +60 -58
- package/dist/docs/08-/346/234/254/345/234/260/346/226/207/344/273/266/345/217/202/350/200/203.md +81 -79
- package/dist/docs/09-/346/214/211/345/234/272/346/231/257/346/223/215/344/275/234.md +138 -108
- package/dist/docs/10-/345/221/275/344/273/244/345/217/202/350/200/203.md +95 -0
- package/dist/docs/README.md +93 -74
- package/package.json +1 -1
package/dist/docs/README.md
CHANGED
|
@@ -1,74 +1,93 @@
|
|
|
1
|
-
# Freelog CLI 使用手册
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
|
39
|
-
|
|
40
|
-
|
|
|
41
|
-
|
|
|
42
|
-
|
|
|
43
|
-
|
|
|
44
|
-
|
|
|
45
|
-
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
1
|
+
# Freelog CLI 使用手册
|
|
2
|
+
|
|
3
|
+
这是一套面向**一个资源一次一条命令**的 CLI:支持普通文件、主题和插件。一个工程可以保存多份独立资源身份,但除 `resource sync` 外,一条涉及资源的命令只会处理其中一份。本手册以“先按场景完成工作,再按命令查准确行为”为组织原则;无需阅读设计文档或源码。
|
|
4
|
+
|
|
5
|
+
不在本期范围:合集、批量发行、前端库模板、支付、session 与 studio 多账号。
|
|
6
|
+
|
|
7
|
+
## 先安装 CLI
|
|
8
|
+
|
|
9
|
+
CLI 要求 Node.js 20 或更高版本。确认版本后,用 npm 全局安装:
|
|
10
|
+
|
|
11
|
+
```powershell
|
|
12
|
+
node --version
|
|
13
|
+
npm install --global @freelog-cli/cli2
|
|
14
|
+
freelog-cli --cli-version
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
若最后一条提示找不到 `freelog-cli`,先重新打开终端;仍无效时,检查 npm 的全局可执行目录是否已经加入 `PATH`。不要以仓库内的 `node packages/...` 命令替代正常使用方式,那只用于本项目开发。
|
|
18
|
+
|
|
19
|
+
安装完成后运行:
|
|
20
|
+
|
|
21
|
+
```powershell
|
|
22
|
+
freelog-cli --help
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
顶层帮助会打印这份本机手册的绝对路径。CLI 不会联网下载文档;发布包内自带完整手册。
|
|
26
|
+
|
|
27
|
+
## 使用前先知道
|
|
28
|
+
|
|
29
|
+
开始操作前请先明确两件事:
|
|
30
|
+
|
|
31
|
+
1. 当前联调使用 `--env dev` 或 `--env test`;省略环境会按 `prod` 处理,而 prod 目前被 CLI 拦截。
|
|
32
|
+
2. 所有命令都以 `--cwd <工程目录>`(或当前目录)定位工程和账号选择器;一个工程可管理多份独立资源状态。除 `create`、`bind` 和 `resource sync` 外,常规资源命令一次只操作一份:唯一状态可省略选择器,多份状态用 `--resource <selector>` 或 TTY 选择。`create` / `bind` 可以新增或接续身份,`resource sync` 不传选择器时批量同步标题。
|
|
33
|
+
|
|
34
|
+
文档仅供阅读,不会在执行命令时修改工程状态。
|
|
35
|
+
|
|
36
|
+
## 先按目标找入口
|
|
37
|
+
|
|
38
|
+
| 你的目标 | 阅读 |
|
|
39
|
+
|---|---|
|
|
40
|
+
| 第一次登录并发行一个普通文件 | [快速开始](./01-快速上手.md) |
|
|
41
|
+
| 先按自己所处的情形找到完整操作路径 | [按场景操作](./09-按场景操作.md) |
|
|
42
|
+
| 创建、发新版本、接入已有资源 | [资源生命周期](./02-日常路径.md) |
|
|
43
|
+
| 创建主题或插件并发布构建产物 | [主题与插件](./03-主题与插件.md) |
|
|
44
|
+
| 继续、覆盖或丢弃未提交的版本内容 | [版本工作稿](./04-版本工作稿.md) |
|
|
45
|
+
| 修改展示信息、策略和上下架 | [资源管理](./05-资源管理.md) |
|
|
46
|
+
| 命令失败后的处理方式 | [故障恢复](./06-常见情况与报错.md) |
|
|
47
|
+
| 环境、登录和本地文件 | [环境、登录与凭据](./07-环境与凭据.md) · [本地状态文件](./08-本地文件参考.md) |
|
|
48
|
+
| 已知命令、参数或脚本需求,想查准确前置条件和影响 | [完整命令参考](./10-命令参考.md) |
|
|
49
|
+
|
|
50
|
+
阅读方式:第一次使用先走“快速开始”;已经有工程或资源时先看“按场景操作”;不确定一条命令会读写什么、脚本该带哪些参数时,直接查“完整命令参考”。专题文章解释原因和边界,命令参考负责完整性,两者不互相替代。
|
|
51
|
+
|
|
52
|
+
## 先判断你处于哪一条路径
|
|
53
|
+
|
|
54
|
+
```text
|
|
55
|
+
普通文件:login → init . → create → create-version --prepare → create-version --yes
|
|
56
|
+
主题/插件:login → init theme|widget . --template <id> → create → 构建产物 → create-version --yes
|
|
57
|
+
已有资源:login → bind →(无线上版本则 create-version;有线上版本则 version draft pull → update-version)
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
`init`、`create`、`bind` 不是同义词:`init` 只建本地身份,`create` 只建线上资源壳,`bind` 只接入已存在的线上资源。`create-version` 才提交首个 `1.0.0`,`update-version` 才提交后续版本。`version show --local` 看未提交工作稿;不带 `--local` 的 `version show` 看线上已发版本。
|
|
61
|
+
|
|
62
|
+
## 通用参数
|
|
63
|
+
|
|
64
|
+
| 参数 | 含义 |
|
|
65
|
+
|---|---|
|
|
66
|
+
| `--env dev|test` | 选择联调环境。推荐每次显式传入。 |
|
|
67
|
+
| `--cwd <dir>` | 工程目录;决定 `.freelog/` 与工作区账号选择器的位置。 |
|
|
68
|
+
| `--resource <selector>` | 为常规单资源命令选择某一份本地身份:`file:N.json`、`id:<资源ID>`、`name:<短标识或username/name>` 或 `title:<标题>`。单份可省略;多份交互选择,非交互必须明确指定。`create` / `bind` 的新增或接续规则见下文。 |
|
|
69
|
+
| `--artifact <path>` | 当前选中资源的产物路径:`create` / `bind` 可记录默认路径;发版时表示本次上传路径;`version set` 只更新默认路径,绝不选择身份。 |
|
|
70
|
+
| `--yes` | 跳过交互确认;不会放宽校验。仅当命令明确支持时(如覆盖工作稿)才允许覆盖相应状态,绝不覆盖工程目录。 |
|
|
71
|
+
| `--json` | 将 CLI 错误输出为 `{ "code", "message" }`。 |
|
|
72
|
+
|
|
73
|
+
新脚本只使用 `--type`,不要使用 `--resource-type`;后者仅为迁移期兼容别名,CLI 会给出弃用警告。`--scaffold`、`artifactMode`、`publish` 和 `release` 不存在于当前命令面。
|
|
74
|
+
|
|
75
|
+
## 先记住四条规则
|
|
76
|
+
|
|
77
|
+
1. `init` 只创建本地身份,`create` 只创建线上资源壳,`bind` 只接入已有线上资源;三者都不会上传或发布版本。
|
|
78
|
+
2. 无线上版本时只能用 `create-version` 发布固定的 `1.0.0`;已有线上版本时只能用 `update-version --version ...` 或 `--bump ...`。
|
|
79
|
+
3. 每次真实发版都会从当前文件或构建目录重新上传、分析;工作稿里的旧 SHA1 不能替代已丢失的产物。
|
|
80
|
+
4. 主题/插件传构建目录,CLI 临时压缩目录内容;普通资源传单个文件。两类资源都不需要、也不能由用户先手工打 zip。
|
|
81
|
+
|
|
82
|
+
## 多资源工程:先选身份,再给产物
|
|
83
|
+
|
|
84
|
+
资源身份与产物路径是两件不同的事。`--resource` 选择要操作的 `N.json`,`--artifact` 只提供该资源本次或默认的文件/构建目录,不能用路径代替资源选择。
|
|
85
|
+
|
|
86
|
+
| 本地状态数量 | 常规资源命令(如 `status`、`update-version`、`policy list`) |
|
|
87
|
+
|---|---|
|
|
88
|
+
| 0 | 停止并提示先 `init`、`create` 或 `bind`。 |
|
|
89
|
+
| 1 | 自动选择,无需传 `--resource`。 |
|
|
90
|
+
| 多份,交互终端 | 显示文件名、标题、短标识、资源 ID、类型、产物路径和工作稿状态,选择后继续。 |
|
|
91
|
+
| 多份,脚本/`--yes` | 停止并列出可复制的 `file:N.json`;传 `--resource` 后重试。 |
|
|
92
|
+
|
|
93
|
+
选择器优先级建议为 `file:N.json`(最稳定)→ `id:<资源ID>` → `name:<短标识或 username/name>`。`title:<标题>` 只能在标题唯一时使用:标题可改也可重复。`resource sync` 是唯一不传选择器就批量同步当前环境所有本地标题的资源命令。
|