跳转到内容

cnb-rs repo set-default

cnb-rs repo set-default [<repo>] [flags]

设置 / 查看 / 清除当前 git 仓库的默认 CNB 仓库。

写入位置是当前仓库的本地 git config(即 .git/config),字段名 cnb.defaultRepo。 设置后,所有 cnb-rs 子命令在没有显式 --repo 时会优先使用该值,覆盖 git remote 自动推断。

典型使用场景:

  • 当前目录的 origin 不是 CNB 仓库(例如同时镜像到 GitHub),但仍想用 cnb-rs 操作对应的 CNB 仓库
  • 同一份代码挂在多个 CNB remote 下,需要显式固定操作目标

仓库解析优先级(从高到低):

  1. CLI --repo <repo>(每次调用临时覆盖)
  2. git config cnb.defaultRepo(本命令写入的值)
  3. Git remote 自动推断(默认)

选项

  • <repo>: 仓库路径(如 org/repo),不传时进入查看模式
  • --view: 显示当前默认仓库及来源(不传 <repo> 时的默认行为)
  • -u, --unset: 清除 cnb.defaultRepo,回退到 git remote 推断

继承的全局选项:

  • --repo <REPO>: 临时覆盖(不写入 git config)
  • --domain <DOMAIN>: 指定目标域名(默认:cnb.cool

示例

bash
# 设置默认仓库
$ cnb-rs repo set-default wwvo/cnb-rs/cnb-rs
 已设置默认仓库:wwvo/cnb-rs/cnb-rs
(写入 git config cnb.defaultRepo;之后所有 cnb-rs 命令默认使用此仓库)
wwvo/cnb-rs/cnb-rs

# 查看当前设置
$ cnb-rs repo set-default --view
默认仓库:wwvo/cnb-rs/cnb-rs
来源:git config cnb.defaultRepo(与 git remote 推断一致)

# 不传参数等价于 --view
$ cnb-rs repo set-default

# 清除
$ cnb-rs repo set-default --unset
 已清除默认仓库设置
(之后 cnb-rs 将回退到 git remote 自动推断)

行为说明

  • 本命令只读写本地 git config,不调 CNB API
  • 必须在 git 仓库目录下运行(写入位置依赖 .git/config
  • 仓库路径仅做最小校验(必须含 /),不验证 CNB 上仓库是否存在;写入后用 cnb-rs repo view 可立即验证
  • --view--unset 互斥;同时给 <repo>--view 时优先 --view(更安全的默认)

另请参阅

Released under the MIT License.