Appearance
登录与授权 Q&A:一次登录,多项目复用
本文补充说明
apc login的行为:全局配置 vs 局部.env,多项目复用、优先级和团队协作时的推荐用法。
1. apc login 写全局好,还是只写当前项目好?
问:apc login 默认把登录信息写到哪?我该怎么选?
答:默认写「全局配置」,也可以选择只写当前项目的 .env。推荐做法是:
个人开发 / 多项目场景:优先用全局配置
直接执行:
bashapc login登录信息会写到全局配置文件中,一次登录,可以在多份 ArenaPro Vite 项目里复用。
对当前项目有额外要求的项目:可以只写当前项目的
.env使用
--env参数:bashapc login --env # 仅写入当前项目 .env apc login --env dev # 仅写入当前项目 .env.dev这种方式不会改动全局配置,只影响当前工程。
2. 在 A 项目登录过,B 项目还要再登录吗?
问:我在 A 项目里执行过一次 apc login,换到 B 项目后还需要再登录一次吗?
答:默认不需要。
当你只执行过:
bashapc login登录信息已经写进了全局配置:
- 换到 B 项目时,
apc resource/apc list/apc set等命令会先看本地.env,如果没有,再回退用全局登录信息; - 只要 Token / UA 还有效,就可以直接使用,无需重复登录。
- 换到 B 项目时,
换句话说:一次全局登录,可以服务多个项目。
3. 本地 .env 和全局登录冲突时,用哪一个?
问:如果我既有全局登录,又在项目 .env 里手动(或通过 apc login --env)写了 Token / UA,到底用哪一个?
答:优先级是「局部优先,全局兜底」。
CLI 在读取登录信息时的大致顺序是:
- 当前项目的
.env[.mode]中的VITE_DAO3_AUTH/VITE_DAO3_UA; - 如果本地
.env系列都没有配置,再回退使用全局配置中的 Token / UA。
这意味着:
- 你可以在某个项目里,用
apc login --env写入一套与全局不同的账号 / 权限; - 在这个项目中,所有需要登录态的操作都会优先使用这套「局部账号」。
4. 团队协作时,推荐哪种登录方式?
问:团队多人协作时,大家应该怎么登录比较省心?
建议:
每个开发者单独执行一次全局登录:
bashapc login- 各自用自己的账号授权,后续无论参与几个项目,都能直接复用这次登录态;
- 不需要在仓库里提交任何和个人 Token 相关的内容。
对某些需要「专门测试账号」或「临时权限」的项目,可以在该项目中再执行一次:
bashapc login --env这样只影响当前项目,不会改动其他项目的登录状态。
5. 我需要把 Token / UA 写进 .env.example 吗?
问:.env.example 里要不要包含 VITE_DAO3_AUTH 和 VITE_DAO3_UA?
答:不要写真实值,可以只保留字段名当「提示」。
常见做法是:
env
# 账号相关(示例字段名,不要提交真实值)
VITE_DAO3_AUTH=YOUR_TOKEN_HERE
VITE_DAO3_UA=YOUR_UA_HERE然后在团队文档里说明:
- 新同学拉仓库后,可以:
- 直接执行
apc login,让 CLI 帮你写入全局配置(推荐); - 或者在当前项目中执行
apc login --env,让 CLI 自动写入.env;
- 直接执行
- 无论哪种方式,都不需要把真实 Token 写进
.env.example并提交。