@fuzdev/fuz_repos

中文文档
0.95.0发布于 2026/11/100BSDTypeScriptES Module零依赖近 30 天下载 2108

用于管理许多重存的工具

中文使用文档
文档目录11 节
  1. 范围
  2. 使用量
  3. 建筑
  4. 快速启动
  5. 运行到重置位置的命令
  6. 生成仪表板的数据
  7. 诊断命令( 只读)
  8. 释放包
  9. 这个 repos 工具
  10. 捐款
  11. 许可证 🐦

fuz repos (单位)

a friendly blue spider facing you

管理许多重置工具 qq repos.fuz.dev (英语)

fuz repos是比较松散的情侣重新持有的单列图案的替代品:

  • 能够实现跨套接字的自动化,而不要求它们在同一单列中
  • 允许从多个 fus repos 工程管理每个 repo
  • 在您的机器上运行自动化, 并赋予您全能的控制和能见度 (与 GitHub 动作相比,双向大取舍)

使用fuz repos 您可以:

  • 动态重置
  • 获取关于 repos 收藏的元数据并导入为 typesafet JSON ()repos.ts时 gro task src/lib/gitops_sync.task.ts(中文(简体) )
  • 为您的 repos 收藏发布一个生成的 docs 网站
  • 导入其组件以查看和与 repo 收集元数据交互
  • 为其他用户和工具发布关于您所收集的再存到网络的元数据
  • 按依赖顺序发布多个相互依存的软件包,并自动更新依赖性

范围

fuz repos 运行 确定、配置驱动的一组已申报的行动 重置权 ——循环中没有LLM,而回波集来自一个已声明列表 联合国 repos.toml 登记和a gitops.config.ts 命名其密钥的子集。 出版是它的旗舰能力,不是整个 身份证明 鲁斯特 repos 工具在此 repo (crates/fuz_repos报告 每一个声明的 repo 的 git 状态 (repos status),同步它们(repos sync, (中文(简体) ), 并且是网关代理 推动通过(repos push) (中文(简体) ).

故意超出范围:单重工(即 单元格, (中文(简体) ), 工作,其分辨率每回波不同,需要判断、机器和服务器 状态,以及 隐藏 ——fuz repos 永远不储存,运输,或阅读秘密 作为数据的材料,包括env文件内容。 它自己的 GitHub API 令牌 (注下)是它用来认证自己的证书.

见 克劳德·姆德 能力等级,什么 repos 从来没有,TS/Rust分裂.

使用量

npm i -D @fuzdev/fuz_repos
  • 安装 repos 二进制, 任务读取 repo 状态从 - 它不在 npm 软件包: 在复选中, cargo install --path crates/fuz_repos --locked

  • 配置 gitops.config.ts 作为 repos.toml 登记密钥 - 每个 repo 的 dir, URL, 分支, 可见度, 和 CI 都来自注册 :

    import type { GitopsConfig } from '@fuzdev/fuz_repos/gitops_config.ts';
    
    const config: GitopsConfig = { repos: ['fuz_util', 'gro', 'fuz_ui'] };
    
    export default config;
    

    任务找到注册方式 repos 是的,从阴茎上走,或拿 --registry <path>; 登记簿的重播, 但磁盘缺少则被复制 repos sync <key>。 。 。 .

  • fuz repos 使用环境变量调用 GitHub API SECRET_GITHUB_API_TOKEN 授权, 是一个 经典 GitHub 令牌 (有"公众访问"供公众重置,没有选择选项) 或一个 gitHub 符号(β) (与 "Public Repositories (read-only)" 选中) 任意 process.env,项目 - 当地 .env,或父目录 ../.env (单位:千美元)gro task src/lib/gitops_sync.task.ts 需要它,您需要选择选项支持私有重置)

  • 通过创建文件在 src/lib/数字 :

    // gitops_sync.task.ts
    export * from '@fuzdev/fuz_repos/gitops_sync.task.ts';
    
    // gitops_analyze.task.ts
    export * from '@fuzdev/fuz_repos/gitops_analyze.task.ts';
    
    // gitops_plan.task.ts
    export * from '@fuzdev/fuz_repos/gitops_plan.task.ts';
    
    // gitops_release.task.ts
    export * from '@fuzdev/fuz_repos/gitops_release.task.ts';
    
    // gitops_validate.task.ts
    export * from '@fuzdev/fuz_repos/gitops_validate.task.ts';
    
    // gitops_run.task.ts
    export * from '@fuzdev/fuz_repos/gitops_run.task.ts';
    
  • 运行 gro task src/lib/gitops_sync.task.ts 从回收站生成仪表板的数据

建筑

gitops.config.ts (registry keys) → repos status --json → local repos → GitHub API → repos.ts → UI components
  • 业务模式: 副作用的依赖性注射(git、npm、fs, repos(中文(简体) )
  • 固定测试: 内部固定装置,预期出版结果
  • 更改集驱动: 自动版本凸起和依赖性更新

见 克劳德·姆德 详细文件.

快速启动

运行到重置位置的命令

gro task src/lib/gitops_run.task.ts "npm test"                  # run tests in all repos (parallel, concurrency: 5)
gro task src/lib/gitops_run.task.ts "npm audit" --concurrency 3 # limit parallelism
gro task src/lib/gitops_run.task.ts "git status" --format json  # JSON output for scripting

特征 :

  • 与可配置货币平行执行(违约:5)
  • 继续错误行为( 显示所有结果)
  • 结构化输出格式(文本或 JSON)
  • 使用轻量级重传路径分辨率通过 repos status页:1 配置缺失的 repo 失败运行, 命名它

生成仪表板的数据

gro task src/lib/gitops_sync.task.ts               # fetch, check each repo, then write repos.json + repos.ts
gro task src/lib/gitops_sync.task.ts --check       # the readiness report alone: no fetch, no token, nothing written
gro task src/lib/gitops_sync.task.ts --allow_dirty # read repos off their branch, dirty, or mid-operation as they sit, warning instead

它在坐着时读取每个回波,从来不会移动或安装回波(英语:repos sync 因此,它拒绝从它的注册分支收回, 肮脏的,或 中期操作——该站点将显示树上除原产地CI以外的模块—— 或缺少已安装的依赖关系 一个落后的来源.

诊断命令( 只读)

gro task src/lib/gitops_validate.task.ts           # run all validation checks (analyze + plan + CI reconcile)
gro task src/lib/gitops_analyze.task.ts            # analyze dependency graph, levels, and cycles
gro task src/lib/gitops_plan.task.ts               # the release's waves, version changes, and cascades, offline
gro task src/lib/gitops_release.task.ts            # preview a release step: the rewrites it would commit and the wave to publish

这些读取每个repo的工作树 恰好它坐在磁盘上,没有分支 切换、拉动或安装——这样它们就可以安全运行 分支检查和未承诺的更改。 每个打印重置 不休息(在他们的登记分支,肮脏,中基,或不同步) 源代码为上次获取; 运行 repos sync 首先在 休养.

释放包

发行版以波浪形式发布——波浪的套件不相依赖—— 和出版是你的: gro publish 在一个npm 2FA内 窗口。 波之间的工具步骤 :

gro task src/lib/gitops_release.task.ts --wetrun         # rewrite released dependencies' dependents, name the wave to publish
# publish the wave it names
gro task src/lib/gitops_release.task.ts --wetrun --wait  # wait out the registry, then the same for the next wave

每个步骤都源于它所观察到的释放之处——变化点, 每个 package.json,以及登记册显示的内容——因此它没有状态和 随处取出 包括人工释放 它会得到 先重置,再重写或公布在登记册上 分支、清洁、闲置、与原产地同步或提前命名固定点; 它不会移动回波到那里(参见 文件/出版.md) (中文(简体) ).

这个 repos 工具

一个Rust CLI 代替重置 repos.toml 登记申报。 动了就换了 没有作者——取出,快取出,克隆出,推出——并重塑了一种分化的 在安全的地方 登记分支进入上游 (单位:千美元)文献/档案 说什么时候),停止任何 冲突。 它从不承诺新的内容, 解决冲突,合并 除了一个快速前进的, 强力的,或推进标记。 需要点钱 2.44 或更新,和Linux 用于检测 Claude 代码的现场会话.

cargo install --path crates/fuz_repos --locked # install the `repos` binary
repos status          # git state of every entry, from local refs
repos status --fetch  # fetch from origin first (remote-tracking refs only)
repos sync            # fetch, then fast-forward, rebase, push, and clone what's safe
repos push            # push the branch checked out here, as a fast-forward (rebased first if it diverged)

联合国

开始做Dev? 开始 格罗 编辑 Fuz 模板。 。 。 .

开始

  • 解析自动化比手工操作更好 gro task src/lib/gitops_sync.task.ts
  • 显示速率限制信息
  • 考虑Fuz repos如何使用 GitHub 动作和 Forgejo 动作

捐款

fuz.dev/贡献者

许可证 🐦

0BSD 数据

版本与发布记录

@fuzdev/fuz_repos 共发布 18 个版本,首次发布于 2026/10/01;过去 12 个月发布了 18 个版本。

版本发布日期距今
0.95.0latest2026/11/106 天前
0.94.02026/11/096 天前
0.93.02026/11/097 天前
0.92.02026/11/087 天前
0.91.02026/11/088 天前
0.90.12026/11/088 天前

关于 @fuzdev/fuz_repos 的常见问题

@fuzdev/fuz_repos 是什么?

用于管理许多重存的工具

如何安装 @fuzdev/fuz_repos?

在项目目录运行 npm install @fuzdev/fuz_repos,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:svelte(^5)、@fuzdev/gro(>=0.229.0)、@sveltejs/kit(^3)、@fuzdev/fuz_ui(>=0.227.0)、@fuzdev/fuz_css(>=0.81.0)、@fuzdev/fuz_util(>=0.81.0)、@fuzdev/fuz_schema(^0.5.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@fuzdev/fuz_repos 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@fuzdev/fuz_repos 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@fuzdev/fuz_repos 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=24.14。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@fuzdev/fuz_repos 可以商用吗?

@fuzdev/fuz_repos 使用 0BSD 许可。几乎没有限制:可自由使用、修改和分发,连保留版权声明也不要求。以上为概括,不构成法律意见,请以许可原文为准。

@fuzdev/fuz_repos 的下载量有多少?

根据 npm 官方下载统计,@fuzdev/fuz_repos 在 2026/10/16 – 2026/11/14 这 30 天内被下载 2,108 次,日均约 70 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@fuzdev/fuz_repos 还在维护吗?

最新版本 0.95.0 发布于 2026/11/10(6 天前);至今共发布 18 个版本,其中过去 12 个月发布了 18 个;首次发布于 2026/10/01。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。