用途:指导使用 abapGit 在 Git 仓库中管理 ABAP 开发对象,覆盖首次安装、克隆现有仓库、推送代码、配置分支或传输策略、搭建 ABAP 的 CI/CD 流水线以及问题排查。
主要能力:abapGit 是运行在 SAP 系统内的开源 Git 客户端,通过序列化把 ABAP 对象转换为基于文件的格式存入 Git,通过反序列化把文件导回系统对象;支持类、接口、CDS、函数组、程序、表等对象。
使用方式:本地部署可创建报表 ZABAPGIT_STANDALONE 或 ZABAPGIT_FULL,从 https://raw.githubusercontent.com/abapGit/build/main/zabapgit_standalone.prog.abap 下载最新版本,复制内容并激活,通过 SE38 或事务码 ZABAPGIT 运行。BTP ABAP Environment 在 ADT 中通过 Window → Show View → Other → abapGit Repositories 使用 HTTPS URL 关联仓库,需要 Git 服务的通信安排。HTTPS 连接需通过 STRUST 导入 SSL 根证书。核心操作包括克隆(输入仓库 URL、选择目标包与分支后拉取对象)、推送(暂存变更、填写提交信息、推送并解决冲突)、拉取(查看变更并激活对象)。仓库根目录的 .abapgit.xml 控制序列化设置,如 MASTER_LANGUAGE、STARTING_FOLDER、FOLDER_LOGIC(PREFIX 或 FULL)、IGNORE、REQUIREMENTS。
适用场景:推荐主干式分支策略,保持 main 稳定可部署,使用短生命周期特性分支并经拉取请求合并;也可采用传输与 Git 混合方式,在 DEV 开发并提交 Git,再用传输请求部署到 QAS/PRD。CI/CD 可结合 abaplint,通过 GitHub Actions 与 abaplint.json 配置检查。
限制:SSL 握手错误需导入证书,授权错误需检查 S_DEVELOP,对象可能被传输锁定,序列化受对象类型支持范围限制,命名空间冲突需统一命名,大型仓库可能变慢,可考虑浅克隆或拆分。具体版本与平台细节以官方文档为准。