@abapify/adt-flow

中文文档
0.4.34发布于 2026/11/03MITTypeScriptES Module构建来源已验证近 30 天下载 2743

ADT的递增运输源树实现

中文使用文档

@ abapify/adt-flow (中文(简体) )

增加运输源 -- -- 树木实现ADT。 服务检查 位于运输范围前的确切源边界,或 最新准确的来源.

注册命令并配置活动格式 adt.config.ts数字 :

import { defineConfig } from '@abapify/adt-config';

export default defineConfig({
  commands: ['@abapify/adt-flow/commands/flow'],
  flow: {
    format: { id: 'abapgit', options: { folderLogic: 'prefix' } },
    include: { objectTypes: ['CLAS', 'INTF'] },
    concurrency: { metadata: 4, sources: 4 },
  },
});

然后将当前目录对齐到运输边界的任意一边:

adt flow checkout tr DEVK900001 --base
adt flow checkout tr DEVK900001
adt flow checkout tr DEVK900001,DEVK900002 --base

自动化可要求提供结构化的库存/物质化证据 模式 :

adt flow checkout tr DEVK900001 --report .adt/checkout-coverage.json
adt flow checkout tr DEVK900001 --base --report .adt/checkout-coverage.json

报告schemaVersion: 1, (中文(简体) ), coverageVersion: 1记录模式/范围,正本 CTS库存,每个库存项目都有一份分辨率结果。 决议 识别寄存器对象,包括被折叠的叶; 非源 CTS 物项,例如 R3TR SUSK 携带 outcome: "non-source" 且不主张 仓库所有者。 报告还记录对象描述路径, 添加 对象在生成的基础工作空间、跳过和仅索引状态中缺失. 消费者可以先验证自有的散列和选定的源组件 发布快照. 要求报告重算清单而不是 使用精确的头条运输-索引快捷键。 现有部分报告保留 他们的原始格式。 默认 CLI 跳过策略不变; 消费者必须 执行它们想要的完整政策.

带有 ADT 子类型的类组件 CLAS/OC, (中文(简体) ), CLAS/OSU, (中文(简体) ), CLAS/OM 决 议 他们的全 R3TR CLAS 拥有者并使用普通的类源/bapGit实现.

仅坚持运输库存和未解决的边界说明 .adt在不读取或实现源文件的情况下,使用明确 仅索引命令 :

adt flow index tr DEVK900001,DEVK900002

checkout 仍然严格:如果任何版本组件没有确切的来源 边界,在不改变工作空间的情况下失败. checkout --partial 是一个 仅实现精确对象. index 永远 实现来源;它保留完整的运输库存和记录 每个未解决组件作为 omitted 后一重试的描述符.

为以后的再试必须保存不准确运输的自动化可以选择 输入 adt flow checkout tr <transport> --index-on-inexact。仅输入 manifest_inexact 结果回到无源索引 检查出错仍未关闭 .

import {
  createAdtFlowService,
  createAdtFlowDependencies,
} from '@abapify/adt-flow';
import { getFormatPlugin } from '@abapify/adt-plugin';

// Use the format plugin already registered by @abapify/adt-plugin-abapgit
const registeredFormatPlugin = getFormatPlugin('abapgit');
if (!registeredFormatPlugin) {
  throw new Error('abapGit format plugin is not registered.');
}

const flow = createAdtFlowService(
  createAdtFlowDependencies(client, registeredFormatPlugin),
);

await flow.checkout({
  root: process.cwd(),
  transports: ['DEVK900001'],
  mode: 'base',
  config: {
    format: { id: 'abapgit', options: { folderLogic: 'prefix' } },
    include: { objectTypes: ['CLAS', 'INTF'] },
  },
});

await flow.index({
  root: process.cwd(),
  transports: ['DEVK900001'],
  config: {
    format: { id: 'abapgit', options: { folderLogic: 'prefix' } },
    include: { objectTypes: ['CLAS', 'INTF'] },
  },
});

服务未引用 Git 命令 。 它调和格式自备文件 说明 .adt,拒绝未自主碰撞或修改 在突变前已索引文件, 并滚动失败的多文件应用 . 分会、承诺、路线和合并请求仍然是打电话者的关切.

.adt/tr/<transport>.json 为在 头检出. 每个运输描述符保留完整的 CTS 对象 库存,包括不支持或目前过滤过的类型。 对象描述符 下级 .adt/objects/ 写在底部和头部 对象 说明使用 .adt/objects/<TYPE>/<unique-name>.<type>.adt.json索引 存储散列和不可改变的版本身份,从源体到源体 证书。 在明确的部分校验中,一个不能是 仍然收到 omitted 其特征和特征 组件诊断,但没有自有文件或源选择。 删除 .adt 只删除优化; 源选择继续来自 提供SAP 清单操作.

精确性适用于已版本的源组件. 元数据文件描述 复选时可用的对象元数据; 流量不重建历史 元数据或复制存储器历史.

版本与发布记录

@abapify/adt-flow 共发布 27 个版本,首次发布于 2026/09/18;过去 12 个月发布了 27 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.4.34latest2026/11/034 天前
0.4.332026/11/025 天前
0.4.322026/11/025 天前
0.4.312026/11/016 天前
0.4.292026/10/308 天前
0.4.282026/10/308 天前

关于 @abapify/adt-flow 的常见问题

@abapify/adt-flow 是什么?

ADT的递增运输源树实现

如何安装 @abapify/adt-flow?

在项目目录运行 npm install @abapify/adt-flow,或使用 pnpm add / yarn add / bun add。

@abapify/adt-flow 支持 TypeScript 吗?

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

@abapify/adt-flow 支持 ESM 还是 CommonJS?

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

@abapify/adt-flow 可以商用吗?

@abapify/adt-flow 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@abapify/adt-flow 的下载量有多少?

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

@abapify/adt-flow 还在维护吗?

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