CANN/HCCL pre-commit使用指南
pre-commit 工具使用指导【免费下载链接】hccl集合通信库Huawei Collective Communication Library简称HCCL是基于昇腾AI处理器的高性能集合通信库为计算集群提供高性能、高可靠的通信方案项目地址: https://gitcode.com/cann/hccl概述pre-commit 是一个 Git Hooks 框架用于在git commit时自动运行代码检查和格式化工具。本项目已配置以下检查Hook功能说明clang-formatC/C 代码格式化自动格式化代码保持风格一致OAT Check开源合规检查检测许可证头、禁止二进制文件提交环境要求Git: 2.0Python: 3.8clang-format: 14.0 (代码格式化工具)Java: 17 (OAT 工具依赖可自动安装)Maven: 3.6 (OAT 工具依赖可自动安装)安装步骤1. 安装 pre-commit# 方式一: 使用 pip pip install pre-commit # 方式二: 使用系统包管理器 (Ubuntu/Debian) sudo apt install pre-commit2. 安装依赖工具# Ubuntu/Debian sudo apt install clang-format openjdk-17-jre maven # macOS brew install clang-format openjdk17 maven3. 项目路径下安装 Git Hooks# 进入代码仓根目录 cd /path/to/hccl pre-commit install安装成功后会显示pre-commit installed at .git/hooks/pre-commit使用方法自动检查推荐每次执行git commit时pre-commit 会自动运行检查git add . git commit -m your commit message输出示例clang-format.............................................................Passed OAT Compliance Check.....................................................Passed手动运行检查# 运行所有检查 pre-commit run # 运行特定类型检查 pre-commit run clang-format pre-commit run oat-check # 检查所有文件不限于暂存区 pre-commit run --all-files跳过检查紧急情况git commit --no-verify -m emergency fix注意: 仅在紧急情况下使用正常开发流程应保证检查通过。检查项说明1. clang-format自动格式化 C/C 代码遵循项目根目录下 .clang-format 配置2. OAT Compliance CheckOAT (Open Source Audit Tool) 检查开源合规性检查项说明许可证头检查确保源文件包含 CANN License 头二进制文件检查禁止提交二进制文件归档文件检查禁止提交 zip/tar 等归档文件OAT 检查脚本首次运行时会自动检测/安装 Java 17检测/安装 Maven克隆并编译 tools_oat 工具约 1-2 分钟常见问题Q1: 首次提交时 OAT 检查很慢原因: 首次运行需要克隆并编译 OAT 工具。解决: 这是正常现象后续提交会使用缓存的 JAR速度会很快。相关文档pre-commit 官方文档clang-format 配置OAT 工具代码仓集成 pre-commit 指导【免费下载链接】hccl集合通信库Huawei Collective Communication Library简称HCCL是基于昇腾AI处理器的高性能集合通信库为计算集群提供高性能、高可靠的通信方案项目地址: https://gitcode.com/cann/hccl创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考