diff --git a/01_doc/git-init-workflow.md b/01_doc/git-init-workflow.md new file mode 100644 index 0000000..61d52cf --- /dev/null +++ b/01_doc/git-init-workflow.md @@ -0,0 +1,131 @@ +# Git 仓库初始化全流程 + +## 环境信息 + +- **Gitea 地址**: `https://git.zeitvex.com` +- **仓库**: `Robocon/RC_Legged` +- **远程 URL**: `https://git.zeitvex.com/Robocon/RC_Legged.git` +- **认证方式**: HTTPS + Personal Access Token + +--- + +## 1. 前提条件 + +- Gitea 服务器已搭建并运行 +- 在 Gitea 上已创建组织 `Robocon` 和仓库 `RC_Legged` +- 本机已安装 Git(验证:`git --version`) +- 已生成 Personal Access Token(路径:Gitea → Settings → Applications → Generate New Token) + +--- + +## 2. 初始化本地仓库 + +```bash +cd /path/to/RC_Legged +git init +git checkout -b main +``` + +--- + +## 3. 创建目录结构 + +```bash +mkdir -p 01_doc +mkdir -p 02_mechanical/CAD +mkdir -p 02_mechanical/STL +mkdir -p 02_mechanical/URDF +mkdir -p 03_hardware/PCB +mkdir -p 03_hardware/BOM +mkdir -p 03_hardware/datasheet +mkdir -p 04_firmware/motor_driver +mkdir -p 04_firmware/sensor_board +mkdir -p 05_software/rl_training/configs +mkdir -p 05_software/rl_training/envs +mkdir -p 05_software/rl_training/logs +mkdir -p 05_software/ros_ws/src +mkdir -p 05_software/ros_ws/scripts +mkdir -p 05_software/utils +mkdir -p 06_assets +``` + +--- + +## 4. 创建 .gitignore + +文件内容参考 `.gitignore`,其中: + +``` +00_reference/ +``` + +用于排除本地参考项目,不纳入版本管理。 + +--- + +## 5. 创建 README.md + +项目首页,包含项目简介、目录结构、远程仓库地址。 + +--- + +## 6. 创建 项目规范.md + +版本管理规范,包含: +- 分支策略:`main` → `main-nightly` → `task-*` +- Commit Message 格式:`[tag] 描述` +- Code Review 流程 +- 硬件测试规范 + +--- + +## 7. 首次提交 + +```bash +git add -A +git commit -m "[init] RC_Legged 项目初始化" +``` + +--- + +## 8. 关联远程仓库并推送 + +```bash +git remote add origin https://git.zeitvex.com/Robocon/RC_Legged.git +git push -u origin main +``` + +> 推送时 Git 会提示输入用户名和密码,密码处填入 Personal Access Token。 + +--- + +## 9. 配置分支保护 + +在 Gitea 网页上操作: +1. 进入仓库 → **Settings** → **Branches** → **Branch Protection** +2. 选择 `main` 分支 +3. 启用保护规则(如禁止强制推送、禁止直接推送等) + +--- + +## 10. 后续开发流程 + +```bash +# 拉取最新代码 +git pull + +# 创建任务分支 +git checkout -b task- main-nightly + +# 日常提交 +git add +git commit -m "[tag] 描述" +git push origin task- + +# 合并到 main-nightly(在 Gitea 上创建 Pull Request) +# 稳定后合入 main +``` + +--- + +*文档版本: v1.0 / 2026-06-25*