本组织开放给所有 AIM 战队内成员使用,所有成员需遵守以下规范:
本组织的仓库创建规范分为 3 种情况:
样例:
26RC_R2_ws- 2026年 Robocon 主赛 R2 机器人主 Workspace 仓库26RC_R2_kfs_tracker- 2026年 Robocon 主赛 R2 机器人 KFS 视觉跟踪仓库,注意如果是 ROS Package 的话,package.xml中的<name>标签需要与仓库中包名部分保持一致,包名单词间也使用下划线_分隔26RC_R1_arm_controller- 2026年 Robocon 主赛 R1 机械臂控制器仓库,包名同理26RC_interfaces- 2026年 Robocon 主赛通用接口仓库,如果是同场比赛跨机器人使用的仓库,命名可以省略机器人部分25RM_raw_rm_vision- 2025年 RoboMaster 联盟赛 RM 视觉主仓库,包名同理
样例:
aim-2526-py-coursework- 2025-2026 学年 AIM 战队 Python 国庆考核仓库,包名单词间分隔使用 dash-,注意与赛用仓库不同aim-2526-navigation-final-assessment- 2025-2026 学年 AIM 导航组期末考核仓库,包名单词间分隔同理使用 dash-aim-rookie-courses- Lectures designed for RM rookies & freshmen @ unnc-aim,主要用于存放新生课程资料,长期使用的仓库可以省略学年部分
样例:
RoboMark- 单独包含 Branding 成分的仓库可以省略aim-xxxx前缀,直接使用仓库名即可Camera2Topic- An ROS2 package that converts usb camera/realsense to topicsros2_hik_camera- 海康相机 ROS2 驱动仓库
- 所有仓库内 不允许 出现任何编译文件,请妥善使用
.gitignore文件来排除项目下所有潜在的编译文件 - 所有仓库主分支统一命名为
main,禁止使用master命名主分支
所有已经处于稳态的仓库禁止直接向 main 分支直接提交修改,请创建分支并使用 Pull request 来提交修改。
分支命名规范需要符合以下要求:
- 分支名统一使用小写字母,单词间使用下划线
_分隔 - 如果是修复
bug的分支,使用fix/[开启用户名]开头,,按照bug的名字命名,如fix/vision_tracking,fix/arm_control_error等 - 新增功能按照功能的名字命名,如
feature/vision_tracking,feature/arm_control等 - 阶段性成果没有显著问题的按照版本号命名
- 保证所有功能稳定可靠的才可 merge 到
main分支
-
推荐的 Git 提交信息格式
基础格式:
<type>(<scope>): <subject> <BLANK LINE> <body> <BLANK LINE> <footer>示例:
feat(user-auth): add login functionality Implemented a login system with JWT authentication. Updated the user model and added necessary endpoints. BREAKING CHANGE: Updated the user model to include an additional "authToken" field. -
格式详解
<type>(提交类型):- 用于标识提交的目的,常见类型包括:
- feat:新增功能。
- fix:修复 Bug。
- docs:仅文档变更。
- style:代码格式调整(不影响功能,例如空格、格式化)。
- refactor:代码重构(不包括 Bug 修复或功能添加)。
- test:添加或修改测试。
- chore:其他杂项,例如更新构建工具、配置文件。
- perf:性能优化。
- ci:持续集成相关修改。
- build:构建系统或外部依赖的变更。
- 用于标识提交的目的,常见类型包括:
<scope>(影响范围):- 可选,用于说明变更的模块或范围,例如:
- user-auth
- api
- ui
- 如果不需要特别说明,可以省略。
- 可选,用于说明变更的模块或范围,例如:
<subject>(简短描述):- 对提交的简要描述,不超过 50 字符。
- 使用 祈使句(如“Add” 而不是“Added”)。
- 第一个字母小写,结尾不要加标点。
<body>(详细描述):- 可选,用于解释提交的详细内容。
- 换行适当控制在 72 字符以内,保持易读性。
- 包含原因、实现方式、以及与上下文相关的信息。
<footer>(备注信息):- BREAKING CHANGE:如果变更会导致不兼容,说明影响范围和解决方案。
- Issues:引用相关问题或任务编号,例如 Closes #123 或 Refs #456。
请务必在提交代码前对代码进行格式化,具体规范请参考以下文档