🔧 chore(standards): sync cpp rules and gitattributes

This commit is contained in:
csh
2026-01-08 15:58:04 +08:00
parent 488785f08f
commit f204115823
3 changed files with 20 additions and 8 deletions
+11 -5
View File
@@ -25,12 +25,18 @@
## C++ 必要约定(必须遵守)
- 语言标准:C++23(含 Modules)。
- 格式化:统一使用 `clang-format`(Google 基线);避免手工排版对齐造成 diff 噪音。
- 格式化:统一使用
`clang-format`(Google 基线);避免手工排版对齐造成 diff 噪音。
- 文件与命名:遵守 `docs/cpp/` 下的规范(或目标项目 vendoring 的标准快照路径)。
- Modules:module 名建议使用点分层级;每段用 `lower_snake_case`module interface unit 推荐 `.cppm`
- Modules 工程:新增/删除/重命名 `.cppm` 或修改 `export module` 时,必须更新 CMake target 的模块 file-set/清单(否则构建容易漂移)
- Windows:不支持原生 Windows 开发环境;Windows 产物通过 Linux + Clang 交叉编译 profile 验证(profile 的 `[settings] os=Windows`)。
- 依赖管理(如使用 Conan):必须提供统一 preset`conan-release`/`conan-debug`);优先通过 `conan install` + `cmake --preset ...` 验证;如遇 Conan 家目录权限问题可临时设置 `CONAN_HOME=/tmp/conan-home`
- Modules:module 名建议使用点分层级;每段用 `lower_snake_case`module
interface unit 推荐 `.cppm`
- Modules 工程:新增/删除/重命名 `.cppm` 或修改 `export module`
时,必须更新 CMake target 的模块 file-set/清单(否则构建容易漂移)
- Windows:不支持原生 Windows 开发环境;Windows 产物通过 Linux +
Clang 交叉编译 profile 验证(profile 的 `[settings] os=Windows`)。
- 依赖管理(如使用 Conan):必须提供统一 preset`conan-release`/`conan-debug`);优先通过
`conan install` + `cmake --preset ...`
验证;如遇 Conan 家目录权限问题可临时设置 `CONAN_HOME=/tmp/conan-home`
## 与开发规范的关系